COM元件,在VB執行OK但在DELPHI下會出現Property的值超過的異常 |
缺席
|
bill534
一般會員 發表:38 回覆:51 積分:17 註冊:2007-02-22 發送簡訊給我 |
COM元件的文件說明如下:
typedef struct DEVICEINFO { short nPortNumber; short nCpuNumber; short nNetWorkNumber; short nStationNumber; short nUnitNumber; BSTR strIPNumber; long nTimeout; } DEVICEINFO; ------------------------------------------------------------------------ VB 環境OK ------------------------------------------------------------------- Private P_objCpRegister As YcsComm.ICpRegister Private P_DevInfo As YcsComm.P_objCpRegister.SetDeviceInfo P_DevInfo -> 執行此行不會出錯誤 P_objCpRegister.Open ---------------------------------------------------------------------------------------------------- Delphi 下執行會出現異常 => Property 值超過 ---------------------------------------------------------------------------------------------------- pData.strIPNumber := WideString('192.168.1.1'); 因為其它欄位都是數值就此欄WideString沒用過,懷疑是此欄位的關係 ! pData.nTimeout := 3000; try CpRegister.SetDeviceInfo(pData); -> 執行此行會出錯 finally memo1.Lines.Add('SetDeviceInfo ... ' inttoHex(CpRegister.LastErrorCode, 8)); CpRegister.LastErrorCode := 0; end; end; |
sryang
尊榮會員 發表:39 回覆:762 積分:920 註冊:2002-06-27 發送簡訊給我 |
|
bill534
一般會員 發表:38 回覆:51 積分:17 註冊:2007-02-22 發送簡訊給我 |
CString strIP = "192.168.1.1"
m_deviceinfo.strIPNumber = strIP.AllocSysString(); m_deviceinfo.nTimeout = 5000; // 通信デバイス情報を設定する m_objRegister->SetDeviceInfo(&m_deviceinfo); } Catch(_com_error &e) { MessageBox(e.Description()); } …(中略)… m_objRegister.Release(); // インスタンスの解放 m_objRegister = NULL; SysFreeString(m_deviceinfo.strIPNumber); |
bill534
一般會員 發表:38 回覆:51 積分:17 註冊:2007-02-22 發送簡訊給我 |
StrIp: WideString;
begin pData.nPortNumber := 1; pData.nCpuNumber := 1; pData.nUnitNumber := 1; // cp-217 pData.nNetWorkNumber := 0; pData.nStationNumber := 0; CpRegister.SetDeviceInfo(pData); CpRegister.ACCESSMODE := YCS_BACKGROUND_SERVICE; finally memo1.Lines.Add('SetDeviceInfo ... ' inttoHex(CpRegister.LastErrorCode, 8)); CpRegister.LastErrorCode := 0; end; |
bill534
一般會員 發表:38 回覆:51 積分:17 註冊:2007-02-22 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |