線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1766
推到 Plurk!
推到 Facebook!

請教一dll檔的使用方法

尚未結案
zhong
一般會員


發表:46
回覆:17
積分:12
註冊:2004-08-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-28 11:27:44 IP:59.37.xxx.xxx 未訂閱
有一DLL檔案KQCONNECT_V70.dll 它的Delphi用戶使用手冊是這樣介紹的 Bool SetPort (PortNum As Integer) 功能: 用來打開一個序列埠, 在做所有的操作之前, 請調用此函數來設置並打開一個有效的序列埠,否則將使用動態庫初始打開的序列埠。(此函數也可用來設置動態庫初始埠。) 參數說明: PortNum 是一個正整數, 表示用戶想打開的序列埠號, 一般為1 或2, 如果用戶擴展了PC 機的序列埠,也可以使用其他, 但是一般小於10。 Return: 如果函數打開埠成功, 將返回true, 否則返回false。 Note:在調用此函數時,請選擇一個有效的埠號, ( 沒被其他設備佔用且存在的埠), 如果埠無效,則返回false。 打開埠成功, 則返回true, Example: Var BoolFlag as Boolean; Object:OleVariant; Object:=createoleobject('KQCONNECT.Connect'); Boolflag:=Object.SetPort(2); 但是我依照Example中的代碼在delphi用時確有錯誤,敬請大大們賜教這個Example 有錯誤嗎?怎樣調用這個dll檔及如何使用這里面的函數.
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-29 11:36:56 IP:203.69.xxx.xxx 未訂閱
這個 dll 應該是 OLE 物件 要註冊.....但這只是猜測 如果 zhong 發問的時候把錯誤 說出來, 相信會立刻得到回應
zhong
一般會員


發表:46
回覆:17
積分:12
註冊:2004-08-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-29 16:34:00 IP:59.37.xxx.xxx 未訂閱
我是這樣寫的 procedure TForm1.Button6Click(Sender: TObject); var BoolFlag as Boolean; Object:OleVariant; begin Object:=createoleobject('KQCONNECT.Connect'); Boolflag:=Object.SetPort(2); end; 錯誤是 [Warning] FMAIN.pas(84): Comparison always evaluates to True [Warning] FMAIN.pas(84): Comparing signed and unsigned types - widened both operands [Warning] FMAIN.pas(132): Variable 'data' might not have been initialized [Warning] FMAIN.pas(132): Variable 'timeString' might not have been initialized [Warning] FMAIN.pas(132): Variable 'FirstRecord' might not have been initialized [Error] FMAIN.pas(210): ',' or ':' expected but 'AS' found [Error] FMAIN.pas(211): Class, interface and object types only allowed in type section [Error] FMAIN.pas(211): ',' or ':' expected but ';' found [Error] FMAIN.pas(212): Type expected but 'BEGIN' found [Error] FMAIN.pas(213): Statement expected but 'OBJECT' found [Error] FMAIN.pas(214): Expression expected but 'OBJECT' found [Fatal Error] DLL.dpr(5): Could not compile used unit 'FMAIN.pas'
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-29 17:25:29 IP:203.69.xxx.xxx 未訂閱
這樣試試    
procedure TForm1.Button6Click(Sender: TObject);
var
  BoolFlag: Boolean;
  Object:OleVariant;
begin
  Object := CreateOleObject('KQCONNECT.Connect');
  Boolflag := Object.SetPort(2);
end;
zhong
一般會員


發表:46
回覆:17
積分:12
註冊:2004-08-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-07-29 18:50:00 IP:59.37.xxx.xxx 未訂閱
謝謝malanlk的回覆,但還是不行.
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-07-30 01:22:04 IP:61.219.xxx.xxx 未訂閱
當你回覆 "還是不行" 的時候, 記得將錯誤訊息也加進來, 我們才能針對錯誤再進行進一步的嘗試. 可否將錯誤訊息再 po 上來...
zhong
一般會員


發表:46
回覆:17
積分:12
註冊:2004-08-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-08-02 15:15:11 IP:59.37.xxx.xxx 未訂閱
這樣用後 procedure TForm1.Button6Click(Sender: TObject); var BoolFlag: Boolean; Object:OleVariant; begin Object := CreateOleObject('KQCONNECT.Connect'); Boolflag := Object.SetPort(2); end; 錯誤訊息是 [Warning] FMAIN.pas(84): Comparison always evaluates to True [Warning] FMAIN.pas(84): Comparing signed and unsigned types - widened both operands [Warning] FMAIN.pas(132): Variable 'data' might not have been initialized [Warning] FMAIN.pas(132): Variable 'timeString' might not have been initialized [Warning] FMAIN.pas(132): Variable 'FirstRecord' might not have been initialized [Error] FMAIN.pas(211): Declaration expected but 'OBJECT' found [Error] FMAIN.pas(213): Statement expected but 'OBJECT' found [Error] FMAIN.pas(214): Expression expected but 'OBJECT' found [Fatal Error] DLL.dpr(5): Could not compile used unit 'FMAIN.pas'
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-08-02 15:52:31 IP:203.69.xxx.xxx 未訂閱
Object 是Delphi保留字    換個名字吧    
procedure TForm1.Button6Click(Sender: TObject);
var
  BoolFlag: Boolean;
  aObject: OleVariant;
begin 
  aObject := CreateOleObject('KQCONNECT.Connect');
  BoolFlag := aObject.SetPort(2);
end;
順便提一下, 如果將你的程式碼用 [code] [/code] 夾起來 縮排就不會跑掉了. 編輯框上面有 # 的按鈕也是同樣作用. 內容送出去還是可以改, 要不要改一下啊, 在你提問的頁面 "發表於 - 2005/08/01 : 11:13:21..." 後面應該有4個 "icon" 其中一個可以讓你再修正內容...要不要試一下...
系統時間:2024-05-03 8:01:38
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!