全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3010
推到 Plurk!
推到 Facebook!

如何在DELPHI2005中注册MSComm的ACtiveX控件

答題得分者是:jeffreck
zwk
一般會員


發表:10
回覆:10
積分:4
註冊:2005-02-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-14 11:33:12 IP:61.134.xxx.xxx 未訂閱
我在2005中导入MSComm的ACtiveX控件后只生成一个MSCommLib_TLB.pas和MSCommLib_TLB.dcr文件,但在控件面板上找不到MSComm,请问谁知道如何注册ACtiveX控件的步骤,请赐教。 發表人 - zwk 於 2005/06/14 12:17:37 發表人 - zwk 於 2005/06/14 12:19:22
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-14 13:30:54 IP:202.39.xxx.xxx 未訂閱
在 Delphi 5 的 Import Type Library 與 Import ActiveX Control 中 可以選擇要 Create Unit 還是要 Install 前者可以產生 .pas, 後者則會在元件盤上產生元件 不知 Delphi 2005 是不是也是這樣? 另外, 如果有產生 .pas 檔的話 應該可以用動態產生元件的方式來使用元件 即使元件盤上沒有該元件 -- hagar.
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-14 13:38:54 IP:61.218.xxx.xxx 未訂閱
新增一個Package 並儲存 New->Package -Delphi for Win32    Component -> Import Component...    會開一視窗     選 Import ActiveX Control   -->Next     選 MS Comm Control 6.0 -->Next 選 要存放的目錄 專案位置 ->Next 選 Add Unit TO Package1.bdsproj project .. -> Finish 安裝 Package --> 如圖 新增專案 For Win32 就可以在 ActiveX 內看到 Comm 了 發表人 - jeffreck 於 2005/06/14 14:06:33
zwk
一般會員


發表:10
回覆:10
積分:4
註冊:2005-02-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-14 15:09:58 IP:61.134.xxx.xxx 未訂閱
谢谢!!!!问题解决了。
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-01-10 14:52:15 IP:210.192.xxx.xxx 訂閱
請教大大:
我的會出現License infomation for TMSComm not found. You cannot use this contron in design mode.
HKEY_CLASSES_ROOT
-->Licenses
-->4250E830-6AC2-11cf-8ADB-00AA00C00905
(預設值) = kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun.
我在REGEDIT 中加入 上列機碼,並做regsvr32 mscomm32.ocx (放在c:\winnt\system32)有成功
請問,我少了什麼步驟。感謝各位大大的教導
環境 delphi 2006
------
環境 DELPHI 7
Delphi 新手,請多指教
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-01-11 17:29:34 IP:210.192.xxx.xxx 訂閱
各位大大:
上面問題已解決,原來是我regedit多了一個"."
但我遇到另一個問題是,每次我重新叫出程式前,我必須從頭安裝一次ActiveX,不然還是會出錯
例如我寫了一個以下程式,但每次我關掉delphi 再重開,我必須先裝mscomm一次,再去開這之
前寫的程式,該如何做,才不用一直要去安裝mscomm就能開起舊的Project,請指教。
procedure TForm1.FormCreate(Sender: TObject);
begin
edit1.text:='';
edit2.text:='';
Mscomm1.CommPort:=6;
mscomm1.InBufferSize:=1024;
mscomm1.Settings:='9600,n,8,1';
mscomm1.InputLen:=0;
mscomm1.InBufferCount:=0;
mscomm1.PortOpen:=true;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
close();
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
b:=mscomm1.input;
edit1.text:=b;
if edit1.text<>'' then
begin
edit2.text:=edit1.text;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
TIMER1.Enabled:=FALSE;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
TIMER1.Enabled:=true;
end;
------
環境 DELPHI 7
Delphi 新手,請多指教
系統時間:2024-04-17 3:12:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!