Win32API質問箱 Build42
■ このスレッドは過去ログ倉庫に格納されています
0299デフォルトの名無しさん
2006/04/25(火) 10:48:00MSDN
http://www.microsoft.com/JAPAN/developer/library/jpwinpf/_win32_writefileex.htm
に
=======
関数が成功すると、0 以外の値が返ります。
=======
WriteFileEx 関数を使う場合、この関数が「成功」を示す値を返していても、それだけでは不十分です。GetLastError 関数を呼び出して、いくつかの条件が「成功」しているだけで、把握するべき他の条件がエラーになっていないかどうかをチェックしてください。=======
とあります。
ここでCreateFile,WriteFileEx,CloseHandleの一連の操作を行うテスト・プログラムにおいて,WriteFileExの戻り値が1になっています。処理は正しく行われています。
しかし,MSDNに関数が成功(0以外の値)のときだけでは不十分との記述があったので念のためGetLastErrorを呼び出すと値が6(ERROR_INVALID_HANDLE)でした。Closeが正常なのでハンドルが無効とは考えにくいです。
とすると関数が1(成功)返し,GetLastErrorがERROR_SUCESSを返さない場合はどう判断すればいいのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています