2

プロジェクトで次のコードを使用しようとしています。http://www.codeproject.com/KB/miscctrl/imapi2.aspx

ただし、アプリケーションを実行して「メディアの検出」をクリックすると、「メディアはサポートされていません」と表示されます。

誰かがこの問題で私を助けてくれますか? Media not supported と表示されるのはなぜですか?

ありがとう、ディビア。

4

1 に答える 1

0

アプリケーションの Eric のソース コードを参照すると、このテキストは MainForm クラスの buttonDetectMedia_Click メソッドから取得されます。

discFormatData = new MsftDiscFormat2Data();
if (!discFormatData.IsCurrentMediaSupported(discRecorder))
{
    labelMediaType.Text = "Media not supported!";
    _totalDiscSize = 0;
    return;
}

そのため、IsCurrentMediaSupported の呼び出しは失敗しています。これは、実際にはIDiscFormat2::IsCurrentMediaSupportedへの COM 相互運用呼び出しです。MSDN のドキュメントには、他に考えられる HRESULT 値がいくつか記載されていますが、それらが発生した場合、COMException がスローされると予想されます。サンプル コードはこの例外をキャッチします。その場合、メッセージ ボックスが表示されますが、ここではそうではありません。

サンプルを実行すると、同じ「Media not supported!」が表示されました。エラー。私は DVD バーナーを持っていますが、ドライブにディスクがありません (現時点では空のディスクは持っていません!)。これが、このメッセージが表示される理由の 1 つの答えのようです。ドライブ内のメディアが書き込み可能でないか、バーナーと互換性がない場合、そのメッセージも表示されると思います。

于 2010-10-19T23:52:56.947 に答える