Windows 7 x64 マシンで MinGW を使用して仮想シリアル ポートと通信しようとしています。デバイス マネージャーによると、私のデバイスは にありますCOM27
。私はこのコードを持っています:
#include <windows.h>
#include <stdio.h>
int main()
{
HANDLE hComm;
const WCHAR FileFullPath[] = {L"COM1"} ;
hComm = CreateFile( (LPCTSTR)FileFullPath,
GENERIC_READ | GENERIC_WRITE,
0,
0,
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED,
0);
if (hComm == INVALID_HANDLE_VALUE) {
printf("Invalid value: %d\r\n", GetLastError());
}
}
ERROR_FILE_NOT_FOUND
(エラーコード2 )が表示されます。出力:
Invalid value: 2
ポート名をCOM1
(所有している別のポート) に変更すると、エラー 1450 でファイルの作成に失敗するか、ERROR_NO_SYSTEM_RESOURCES
.
私は何を間違っていますか?MinGW の代替を受け入れます。必須ではありません。