三菱 MX componet 的元件在使用上於 BCB 上是否有問題? |
尚未結案
|
n8691414
一般會員 發表:1 回覆:0 積分:0 註冊:2009-12-01 發送簡訊給我 |
各位大大~ 最近小弟於 BCB 中使用 MX-Component 元件. 無奈 ReadDeviceBlock 指令小第一值無法成功地使用.
小弟是有將該 COM 元件加入 IDE 中了, 並且也建立專屬物件. 以下是小弟的程式碼, 可否請有用過的人幫小弟解惑呢? 感激不盡 wchar_t wbuffer[64]; long nTemp; int nError; char cTemp[128]; long BufferLen = 1; //欲取得 W500 Deviece 的記憶體內容 sprintf(cTemp, "%s", "W500"); //將單字元改為雙字元 MultiByteToWideChar(CP_ACP, 0, cTemp,strlen(cTemp),wbuffer,sizeof(wbuffer)); //或是利用 swprintf 來禁雙字元的轉換 swprintf(wbuffer, L"%s", L"W500"); nError = ActQJ71E71TCP1->WriteDeviceBlock(wbuffer, BufferLen, &nTemp ); 回傳值 nError 是 0x01802001, 就是 Device Error 的訊息. 煩請各位大大幫忙小弟看看~ 感激不盡~ 編輯記錄
taishyang 重新編輯於 2009-12-01 11:30:02, 註解 無‧
|
ippo7235
一般會員 發表:0 回覆:1 積分:0 註冊:2009-12-16 發送簡訊給我 |
===================引 用 n8691414 文 章=================== 各位大大~ 最近小弟於 BCB 中使用 MX-Component 元件. 無奈 ReadDeviceBlock 指令小第一值無法成功地使用. 小弟是有將該 COM 元件加入 IDE 中了, 並且也建立專屬物件. 以下是小弟的程式碼, 可否請有用過的人幫小弟解惑呢? 感激不盡 wchar_t wbuffer[64]; long nTemp; int nError; char cTemp[128]; long BufferLen = 1; //欲取得 W500Deviece 的記憶體內容 sprintf(cTemp, "%s", "W500"); //將單字元改為雙字元 MultiByteToWideChar(CP_ACP, 0, cTemp,strlen(cTemp),wbuffer,sizeof(wbuffer)); //或是利用 swprintf 來禁雙字元的轉換 swprintf(wbuffer, L"%s", L"W500"); nError = ActQJ71E71TCP1->WriteDeviceBlock(wbuffer, BufferLen, &nTemp ); 回傳值 nError 是 0x01802001, 就是 Device Error 的訊息. 煩請各位大大幫忙小弟看看~ 感激不盡~ 0x01802001 錯誤碼意義為 :軟元件出錯,函數中指定的軟元件字符串未經批准 解決方法為:檢查軟元件 (看起來怪怪的因為是簡體中文版寫的) int nError; 這邊應該是要 long nError ; 而且元件使用上還要再 open() ,close(),否則會再有其他的錯誤出現 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |