C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: WMPを使ったCDのリッピング


(過去ログ 18 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■7151 / inTopicNo.1)  WMPを使ったCDのリッピング
  
□投稿者/ Piz&Yumina (1回)-(2007/08/30(Thu) 20:03:52)

分類:[.NET 全般] 

はじめまして。

開発環境はWindows XP SP2、Visual C#です。

CDのリッピング作業を自動化したいと思い、WindowsMediaPlayer SDKを使用してリッピングを行うプログラムを書いたのですが動きません。

Windows SDKはインストールしてありますし、参照の追加からWMPLibを追加しました。

リッピングを行う部分は下のようになっています。


Daemon ToolsでCDイメージをマウント
    ↓
WMPでリッピング
    ↓
CDイメージをアンマウント

というような流れです。(実際はこれを繰り返します)


-----------------------------------------------------------------------------
Console.WriteLine("マウント中...");

process = new Process();
process.StartInfo.Arguments = "-mount 0, \"" + Path.GetDirectoryName(fileList[i]) + "\\" + 
Path.GetFileNameWithoutExtension(fileList[i]) + ".cue" + "\"";
process.StartInfo.FileName = @"C:\Program Files\DAEMON Tools\daemon.exe";
process.Start();

Thread.Sleep(5000);

WMPLib.WindowsMediaPlayer windowsMediaPlayer = new WMPLib.WindowsMediaPlayer();
WMPLib.IWMPCdromCollection cdroms = windowsMediaPlayer.cdromCollection;
WMPLib.IWMPCdrom cdrom = cdroms.getByDriveSpecifier(driveLetter);
WMPLib.IWMPCdromRip rip = (WMPLib.IWMPCdromRip)cdrom;

//アルバム名の表示
Console.WriteLine(cdrom.Playlist.name);

Console.WriteLine("リッピング開始...");
rip.startRip();

Thread.Sleep(5000);

Console.WriteLine("{0}%", rip.ripProgress);

while (rip.ripState == WMPLib.WMPRipState.wmprsRipping)
{
    Console.WriteLine("{0}%", rip.ripProgress);
    Thread.Sleep(1000);
}

process = new Process();
process.StartInfo.Arguments = "-unmount 0";
process.StartInfo.FileName = @"C:\Program Files\DAEMON Tools\daemon.exe";
process.Start();

Console.WriteLine("終了");
-----------------------------------------------------------------------------


マウント/アンマウントもできており、アルバム名も正しく表示されるのですが、リッピングだけできません。

いろいろ調べたのですが、情報が少なくて困っています。
ちょっとしたヒントでも良いので、教えていただけると助かります。

よろしくお願いします。

引用返信 編集キー/
■7155 / inTopicNo.2)  Re[1]: WMPを使ったCDのリッピング
□投稿者/ Piz&Yumina (2回)-(2007/08/31(Fri) 02:40:44)
自己解決しました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -