Win32API質問箱 Build42
■ このスレッドは過去ログ倉庫に格納されています
0301デフォルトの名無しさん
2006/04/25(火) 12:34:35GetLastError が ERROR_SUCCESS を返すこと確認するのではなく、
関数が 1 を返すが、アプリ側でさらに処理が必要なケース
(例えば ERROR_MORE_DATA ) について必要な処理を行うようにしてください。
関数が 1 を返し、GetLastError が ERROR_SUCCESS を返すのは、
書き込みが(なぜか)同期的に完了し、コンプリーションルーチンは呼ばれない
ということを示しています(これは0バイトの書き込み以外では珍しいケースです)。
これは成功というより例外的な結果で、アプリが期待しているようにコンプリーション
ルーチンが呼ばれないため、何か特別な対応をする必要が(たぶん)あるでしょう。
(自分で呼ぶとか)。
・・・「例えば」とありますが、ERROR_MORE_DATAとERROR_SUCCESSの2つ以外の
どんな値に対応する必要があるのかは謎です。たぶんこの2つだけでOKなのでしょう。
■ このスレッドは過去ログ倉庫に格納されています