寫資料出去 RS232 的疑問? |
尚未結案
|
elva349
一般會員 發表:15 回覆:21 積分:17 註冊:2007-04-17 發送簡訊給我 |
想請問一下~ 我把資料寫出去 是使用WriteFile 這個function
BOOL WINAPI WriteFile( __in HANDLE hFile, __in LPCVOID lpBuffer, __in DWORD nNumberOfBytesToWrite, __out_opt LPDWORD lpNumberOfBytesWritten, __inout_opt LPOVERLAPPED lpOverlapped );因為我在 Create COM 時 是這樣 [code cpp] h_RS232=CreateFile(ComboBox1->Text.c_str(), GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, //設定成 OVERLAPPED NULL); [/code] 因為在讀資料的時候 我是用OVERLAPPED,現在讀資料沒有問題了,但是在寫資料出現了問題. 問題1: 我寫資料的時候可以不要用OVERLAPPED嗎? 問題2: 我一次要傳出去的是一筆比較長的字串,可是不知道為什麼 都會無法傳全部出去 我傳送的方法是這樣 [code cpp] DWORD ByteCount; OVERLAPPED ov ; memset(&ov,0, sizeof(ov)) ; WriteFile( pObject->h_RS232, TestMess.c_str(), strlen(TestMess.c_str()), &ByteCount, &ov); [/code] TestMess 是我要傳出去的字串 我傳送是開另外一個Thread 來傳的 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |