質問編集履歴
1
void error_dialog(HWND hWnd)を追加しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -34,6 +34,8 @@
|
|
34
34
|
|
35
35
|
#include <windows.h>
|
36
36
|
|
37
|
+
#include <tchar.h>
|
38
|
+
|
37
39
|
using namespace std;
|
38
40
|
|
39
41
|
int main(int) {
|
@@ -62,7 +64,37 @@
|
|
62
64
|
|
63
65
|
//?????COM4ポートをオープンする ????
|
64
66
|
|
65
|
-
hCom = CreateFile(L"COM4", (GENERIC_READ | GENERIC_WRITE), 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
67
|
+
hCom = CreateFile(L"\\.\COM4", (GENERIC_READ | GENERIC_WRITE), 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
68
|
+
|
69
|
+
void error_dialog(HWND hWnd) {
|
70
|
+
|
71
|
+
DWORD errorcode = GetLastError();
|
72
|
+
|
73
|
+
LPVOID lpMsgBuf;
|
74
|
+
|
75
|
+
FormatMessage(
|
76
|
+
|
77
|
+
FORMAT_MESSAGE_ALLOCATE_BUFFER // テキストのメモリ割り当てを要求する
|
78
|
+
|
79
|
+
| FORMAT_MESSAGE_FROM_SYSTEM // エラーメッセージはWindowsが用意しているものを使用
|
80
|
+
|
81
|
+
| FORMAT_MESSAGE_IGNORE_INSERTS,// 次の引数を無視してエラーコードに対するエラーメッセージを作成する
|
82
|
+
|
83
|
+
NULL, errorcode, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),// 言語を指定
|
84
|
+
|
85
|
+
(LPTSTR)&lpMsgBuf, // メッセージテキストが保存されるバッファへのポインタ
|
86
|
+
|
87
|
+
0,
|
88
|
+
|
89
|
+
NULL);
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
MessageBox(hWnd, (LPCTSTR)lpMsgBuf, _TEXT("エラー"), MB_OK | MB_ICONINFORMATION);
|
94
|
+
|
95
|
+
LocalFree(lpMsgBuf);
|
96
|
+
|
97
|
+
};
|
66
98
|
|
67
99
|
if (hCom != INVALID_HANDLE_VALUE) {
|
68
100
|
|