ReadFileでエラーが出ます。
シリアルポートで非同期でバイナリを受信するプログラムを作成しています。
受信部分は以下のソースです。これで実行すると「データ受信エラー」のダイアログが出ます。
GetLastErrorでは998(メモリ ロケーションへのアクセスが無効です。)が得られました。
ネットで調べましたが何が原因かも分かりません・・。
どうかアドバイスお願いします。
HANDLE hEvent;
hEvent = CreateEvent( NULL, FALSE, FALSE, NULL );
OVERLAPPED old;
ZeroMemory( &old, sizeof(old) );
old.Offset = 0;
old.OffsetHigh = 0;
old.hEvent = hEvent;
DWORD dwCount;
char* rdBuf;
DWORD dwRead;
if(!ReadFile(hCom,rdBuf,dwCount,&dwRead,&old)){
if(ERROR_IO_PENDING == GetLastError()){
GetOverlappedResult(hCom,&old,&dwRead,TRUE);
}
else MessageBox("データ受信エラー","試作1",MB_ICONSTOP);
}