0

FSCTL_LOCK_VOLUME で DeviceIoControl を使用して、直接ディスクの読み取り/書き込みを行う前に USB ペン ドライブをロックしています。プログラムは動作します - 時々。ロック呼び出し自体に問題があります。Visual Studio 2008 でコマンドをステップ実行すると、結果は正しく、ロックは毎回成功します。コードを実行すると (デバッグかどうかに関係なく)、無効なハンドルで散発的に呼び出しが失敗します。唯一の顕著な違いは、ステッピング時に 0.5 秒の一時停止があることです。これには満足していますが、呼び出しを実行/デバッグするとすぐに失敗します。

これがどこに落ちているかについてのヒントを教えてください。

これは真の技術者のためのものだと思います!

4

1 に答える 1

0

タイミングバグのように聞こえます。ハンドルにアクセスできる他のスレッドはありますか? その場合、DeviceIoControl を呼び出す前に、そのうちの 1 つが閉じている可能性があります。

于 2012-10-01T12:36:19.897 に答える