Com port 開關之問題 |
尚未結案
|
kadlac
一般會員 發表:18 回覆:30 積分:9 註冊:2004-07-23 發送簡訊給我 |
各位大大您好! 我目前發展的程式, 需要不斷的開關Com port, 程式架構如下, void __fastcall TForm1::Button1Click(TObject *Sender)
{
int i;
for (i=1;i<1000;i )
{
Comm1->PortOpen=true;
工作一;
Comm1->PortOpen=false;
工作二;
}
} 呼叫之TComm Component如下: void TComm::OpenComm(void)
{
HANDLE hNewCommFile;
String ComStr;
char *COMNo;
ComStr = "COM" IntToStr(1 FCommPort); hNewCommFile = CreateFile( ComStr.c_str(),
GENERIC_READ | GENERIC_WRITE,
0, //not shared
NULL, //no security
OPEN_EXISTING,
0,//No Overlapped
NULL //template
); if (hNewCommFile == INVALID_HANDLE_VALUE)
ShowMessage("Error opening serial port");
if (!SetupComm( hNewCommFile, INPUTBUFFERSIZE, INPUTBUFFERSIZE ))
{
CloseHandle( hComm );
ShowMessage( "Cannot setup comm buffer" );
} } 因此我會遇到的問題是Port 開關多次之後, 會出現Error opening serial port 的訊息,也就是port 開不起來,或是port 還沒關 , 造成程式中斷, 請問各位大大,應該如何處理,才能強制把打不開的port繼續打開,使程式繼續下去,而不至於
中斷? 謝謝您的熱情幫忙!
|
andychang1690
資深會員 發表:20 回覆:694 積分:442 註冊:2003-03-14 發送簡訊給我 |
|
kadlac
一般會員 發表:18 回覆:30 積分:9 註冊:2004-07-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |