問題タブ [imapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - IMAPI2UniqueIDをドライブ文字に関連付ける方法
私は次のコードを持っています:
これの問題は、コンボボックスにドライブ文字を表示したいので、ユーザーは使用したいドライブを選択できますが、選択したドライブのUniqueIDを使用して、後でディスクを書き込むことができます。
では、UniqueIDをドライブ文字に関連付ける方法はありますか?
皆さん、ありがとうございました。
c# - IMAPI2 作成済みの iso を書き込む方法
hackchinaとcodeprojectの例を読みましたが、既存の .iso ファイルを書き込む方法がわかりません。上記の例は、フォルダーから .iso を作成し、それを書き込む方法を示しています。isoファイルを直接書き込めるようにしたいです。
ここにいくつかのコードがあります:
誰かが私をさらに助けてくれませんか?example.iso があるとしましょう。私は今どうすればいい?理解できない。(CodeProject の例のコードで IMAPI2.interop を使用しました)。
どうもありがとう
c# - C# で DeviceIoControl と FSCTL_MAKE_MEDIA_COMPATIBLE を使用して Live File System (LiveUDF) ディスクをファイナライズする方法は?
C# で Live File System (または「Live UDF」) 光ディスクをファイナライズしようとしています。MSDN および TechNet の記事とさまざまなフォーラムへの投稿を読んで理解したところによると、Image Mastering API (または IMAPI) はこのタイプのファイルシステムをサポートしていません。また、コーディング作業で IMAPI を使用して LiveUDF ディスクをファイナライズすることに失敗しました。その結果、FSCTL_MAKE_MEDIA_COMPATIBLE 制御コードを使用して DeviceIoControl 関数を使用しています。
まず、DeviceIoControl を同期的に呼び出していましたが、関数は 1117 を返し、ディスクは最終的に数分後にファイナライズされました。最終的な失敗または実際の成功の場合にのみプロセスを返す必要があるため、この結果は受け入れられません。
次に、CreateFile で FILE_FLAG_OVERLAPPED (0x40000000) dwFlagsAndAttributes フラグを指定してデバイス ハンドルを開き、NativeOverlapped オブジェクトを DeviceIoControl 呼び出しに渡すことで、DeviceIoControl を非同期的に呼び出します。その前に、明らかに、オーバーラップ イベントを処理するために IOCompletionCallback を設定しました。
説明したように DeviceIoControl を非同期で呼び出すと、(同期的に呼び出された場合と同様に) ほとんどすぐに 1117 が返され、IOCompletionCallback メソッドは呼び出されず、ディスクは数分後にファイナライズされます。
私の質問は: C# と DeviceIoControl を使用して Windows 7 プラットフォーム上の C# で Live File System (または「Live UDF」) 光ディスクをファイナライズするにはどうすればよいですか (プロセスが完了するまで「待機」する機能を使用して、同期的または非同期的に)最終的な成功または失敗の結果をキャプチャするため)?
よろしくお願いします。
c# - 空の DVD/ブルーレイ ディスク (IMAPI) の空き容量
私の最初の質問は少し漠然としていたので、明確にさせてください。
私の目標は次のとおりです。
- IMAPI 経由でファイルシステムを選択した後、ブランク ディスクのサイズを見積もる
- このディスクを焼いた場合、ファイルがこのディスクで消費するスペースを見積もる。
私が知りたいこと:
- 選択したファイル システムのセクターあたりのバイト数をプログラムで取得することは可能ですか?
- そうでない場合、IMAPIがさまざまなファイルシステム/メディアタイプに使用するセクターあたりのバイト数のデフォルト値はありますか?それはどこかに文書化されています.
c++ - IFileSystemImage2 の put_BootImageOptionsArray を IMAPI2 (E_NOINTERFACE を取得) から使用するにはどうすればよいですか?
IFileSystemImage2 インターフェイスを使用して、Imapi2 を使用して複数のブート レコードを持つ ISO を作成しようとしています。
これを行うには、タイプのput_BootImageOptionsArray
受け渡しを使用できる必要があります。つまり、各ブート オプション構成のタイプの COM ポインターです。短いデモとして、次のコードがあります (この場合は 1 つだけ作成しました)。SAFEARRAY*
VT_DISPATCH
IBootOptions
IBootOptions
しかし、何度電話put_BootImageOptionsArray
してもE_NOINTERFACE
返ってきます。
IsoImage は期待どおりに作成されています。
IFileSystemImage2
から継承された機能を使用すると正常にIFileSystemImage
動作します。同様にCoCreateInstance
、IFileSystemImage
代わりにこのインターフェイスを使用することもできます。
WinDbg で自分のプロセスにアタッチし、でブレークポイントを設定しましたCMsftFileSystemImage::put_BootOptionsArray
が、この関数 (基になる実装) が呼び出されていません。
したがって、私の質問は単純です。実装はそこにあるように見えますが、呼び出すことができないようです。この特定の機能を使用した経験がある人はいますか?もしそうなら、どのように機能させましたか?
c# - ディスクにフォルダを作成し、IMAPI 2 を使用して書き込みます
C# で IMAPI2 を使用して、ファイルのリストをマルチセッション ディスクに書き込みます。しかし、それらのファイルをディスク内のディレクトリに焼き付けたいと思っています。今、これは私が持っているものです
ドライブに一時フォルダーを作成し、書き込みたいすべてのファイルをそのフォルダーにコピーし、そのフォルダーを書き込み項目として追加する必要があるため、これはラウンド アバウトな方法です。
この C# IMAPI2 ラッパーのわずかに変更されたバージョンを使用して、これを実装しています http://www.codeproject.com/Articles/24544/Burning-and-Erasing-CD-DVD-Blu-ray-Media-with-C-を
c++ - imapi2 comオブジェクトのuuid/ヘッダーを見つけるか、mingwで動作するように__uuidofを取得します
mingw プロジェクトから imapi2 com オブジェクトにアクセスしようとしています。私はビジュアルスタジオの例に従おうとしていました。Microsoft SDK 7.1 で imapi2 ヘッダー ファイルを見つけましたが、uuid がないようです。私が見た例は、オブジェクトを作成するときに uuid を見つけるために __uuidof を使用していました。このような:
しかし、 __uuidof が原因で常にエラーが発生します
_GUID const& __mingw_uuidof() への未定義の参照。
しかし、__mingw_uuidof は次のように定義されています ...
... _mingw.ha の "#define __uuidof(type) __mingw_uuidof<__typeof(type)>()" から数行上
__mingw_uuidof の mingw 定義が機能しないのはなぜですか?
SDKヘッダーファイルでDiscMasterのようなimapiオブジェクトのuuidを見つける方法はありますか? または、別のヘッダー ファイルを取得する必要がありますか。
ありがとう