需要呼叫一個外部dll的函式,dll中函式是:
HRESULT XJCA_KeyInsert([in] BSTR csp,[out,retval] int* ok);
我在pb8.0中LOCAL EXTERNAL FUNCTION做了如下定義:
FUNCTION long XJCA_KeyInsert( string csp,ref int ok) LIBRARY "xjcaTechATL.dll"
但運行時,出現
Error calling external function XJCA_KeyInsert at line 6 in function of_check_ca_key of object n_ca_xjca_hos.
的錯誤
不知道是HRESULT對應錯了,還是BSTR對應錯了
請各位賜教!
uj5u.com熱心網友回復:
試一下:FUNCTION long XJCA_KeyInsert( string csp) LIBRARY "xjcaTechATL.dll"
uj5u.com熱心網友回復:
試了,不管用啊,還是同樣的錯誤uj5u.com熱心網友回復:
估計是字符的問題宣告改為
FUNCTION long XJCA_KeyInsert( blob csp,ref int ok) LIBRARY "xjcaTechATL.dll"
然后呼叫
string ls_csp
blob lbl_csp
lbl_csp = ToUnicode(ls_csp)
int li_ok
XJCA_KeyInsert(lbl_csp,li_ok)
這樣看看
uj5u.com熱心網友回復:
試一下:FUNCTION boolean XJCA_KeyInsert( string csp,ref st_login ok) LIBRARY "xjcaTechATL.dll"
int* ok 這個好像是指標吧。
st_login 是用戶自己定義的結構體。
uj5u.com熱心網友回復:
試了,這個也不行啊uj5u.com熱心網友回復:
如果是 回呼函式的話,PB不支持!轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/70857.html
標籤:API 調用
