ドライブのハンドルが取得できない

[戻る]
inoino [E-Mail] 2003/10/02(木) 11:03:57
CreateFileを使って、ドライブのハンドルを取得したいの
ですが、以下の構文で、エラーになります。何か間違って
いるのでしょうか?
ちなみにドライブのハンドルが、欲しいのは、ドライブの
内容をFlushFileBuffersを使って、syncしたいからです。

int handle = CreateFile("\\\\.\\H:",
                            0,
                            0,
                            0,
                            OPEN_EXISTING,
                            0,
                            0);

ku 2003/10/02(木) 13:12:04
FILE_SHARE_WRITEを指定しないとだめなのかも

ku 2003/10/02(木) 13:22:32
ドライブ単位でFlushFileBuffers()できるのかは知りませんが
テスト用だから無いのかもしれないけどFlushFileBuffers()を使うには
GENERIC_WRITEを指定して得たハンドルでないとだめとMSDNに書いてあります

渋木宏明(ひどり) [E-Mail] [HomePage] 2003/10/02(木) 14:04:12
>エラーになります。

どんなエラーですか?

また、そのエラーはいつ発生しますか?
ンパイル時ですか?それとも実行時?

実行時だとすると、GetLastError() が返してくる値は何でしたか?

古いスレッドには追加発言できません。