掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
COMポートオープン (CreateFile) でのエラー (ID:69948)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
お世話になります。 環境 Windows2000 SP4 / Visual C++ 6.0 SP6 / MFC MDI 有効な COM ポートのチェックを行うのに CreateFile() を使用しているのですが、COM10 以降の指定で全て INVALID_HANDLE_VALUE が返されます。 COM10 以降の指定で何か制限があるのでしょうか? デバイスマネージャやハイパーターミナル(アクセサリ)では問題なく認識・通信できております。 今回実行している環境は WindowsXP Home SP3 です。 下記がテストサンプルです。 void CxxView::Onxxx() { CString tp, str; int i; HANDLE hand; COMMPROP comm; DCB dcb; str = _T(""); for(i=1;i<30;i++) { tp.Format("COM%d", i); hand = CreateFile(tp, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if(hand != INVALID_HANDLE_VALUE) { if(GetCommProperties(hand, &comm) && GetCommState(hand, &dcb)) str += tp + "\n"; else str += tp + " - error\n"; CloseHandle(hand); } else str += tp + " - FALSE\n"; } AfxMessageBox(str); } よろしくご教授お願い致します。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.