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

Dll 程式裡, 如何使用 MSComm 元件

尚未結案
JH
一般會員


發表:3
回覆:13
積分:3
註冊:2006-07-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-08-31 13:44:01 IP:220.141.xxx.xxx 未訂閱

各位高手,

我想要在 Dll 的程式裡去使用 MSComm 的元件,請問要如何用?

salo0610
高階會員


發表:42
回覆:120
積分:107
註冊:2003-02-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-09-01 10:33:04 IP:220.132.xxx.xxx 訂閱

使用方法如同在撰寫一般的程式,只是你是寫成 dll 檔而以!!

JH
一般會員


發表:3
回覆:13
積分:3
註冊:2006-07-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-09-01 13:09:15 IP:203.75.xxx.xxx 未訂閱

OK, 我把問題描述的更清楚一點:

一般程式會有 Form, 所以我們很容易把一些元件放到Form上面,然後來使用它.

但是, DLL裡面沒有任何的 Form, 要如何使用呢?

salo0610
高階會員


發表:42
回覆:120
積分:107
註冊:2003-02-18

發送簡訊給我
#4 引用回覆 回覆 發表時間:2006-09-01 16:13:58 IP:202.39.xxx.xxx 訂閱

一般程式的Form 可以為 auto-create forms 或 available forms

DLL裡面也可以有Form,但都是 available forms 的!!

所以DLL裡面要用MSComm,

就如同在一般程式中,將 MSComm元件放在 available forms 的意思是一樣的。


JH
一般會員


發表:3
回覆:13
積分:3
註冊:2006-07-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2006-09-03 11:23:06 IP:218.162.xxx.xxx 未訂閱

===================引 用 文 章===================

一般程式的Form 可以為 auto-create forms 或 available forms

DLL裡面也可以有Form,但都是 available forms 的!!

所以DLL裡面要用MSComm,

就如同在一般程式中,將 MSComm元件放在 available forms 的意思是一樣的。

//=====================================================================//

Thanks for your answer.

There are 2 questons :

<1> 如何建立 available forms in dll, 是直接選取一個 new form 嗎?

<2> 我的目的是要把 RS232 的通訊寫成 API, for example: open comport , Send , Receive , close comport, 所以我不需要去看見任何的 Form, 我知道有一些 code 可以去寫, 但我想用更簡單的方式就是直接拿 MSComm 的元件來使用, 但又不希望有任何 form 會長出來. 所以我想用 MSComm 元件, 又不希望長 Form, 那要如何做呢?


salo0610
高階會員


發表:42
回覆:120
積分:107
註冊:2003-02-18

發送簡訊給我
#6 引用回覆 回覆 發表時間:2006-09-05 11:26:49 IP:220.132.xxx.xxx 訂閱

在你的 dll project 裡 , file-->new--> form 。

動態的form,在使用前當然要先 new 出來,才能使用。
如果form 不要show 出來,在new完後不要下 show 或 ShowModal ,
應該就不會顯示(show)出來了,不然在給它下個 hide(),也可以~~:p

dll(api)放MSComm元件,如果是要給它人二次開發用的,會有不太妥當的地方,
至少在用你的dll(api)檔時,本身的電腦要先註冊MSComm元件。

JH
一般會員


發表:3
回覆:13
積分:3
註冊:2006-07-06

發送簡訊給我
#7 引用回覆 回覆 發表時間:2006-09-05 21:41:52 IP:220.141.xxx.xxx 未訂閱

===================引 用 文 章===================

在你的 dll project 裡 , file-->new--> form 。

動態的form,在使用前當然要先 new 出來,才能使用。
如果form 不要show 出來,在new完後不要下 show 或 ShowModal ,
應該就不會顯示(show)出來了,不然在給它下個 hide(),也可以~~:p

dll(api)放MSComm元件,如果是要給它人二次開發用的,會有不太妥當的地方,
至少在用你的dll(api)檔時,本身的電腦要先註冊MSComm元件。

//=========================================================//

HI salo0610,

Thanks for your answer, I knew that before use component MSComm needs to register.

I understood your meaning, thanks.

JH
一般會員


發表:3
回覆:13
積分:3
註冊:2006-07-06

發送簡訊給我
#8 引用回覆 回覆 發表時間:2006-09-05 21:56:13 IP:220.141.xxx.xxx 未訂閱
Sorry, 請問我要如何給你分數呢? 找不出那裡可以給分的地方
CoffeeX
中階會員


發表:18
回覆:121
積分:72
註冊:2005-02-18

發送簡訊給我
#9 引用回覆 回覆 發表時間:2006-09-07 11:26:19 IP:140.125.xxx.xxx 未訂閱

目前論壇似乎還在改版中,

我詢問過大大,也還沒有刪除文章的功能,

KTop加油!^^~
===================引 用 文 章===================
Sorry, 請問我要如何給你分數呢? 找不出那裡可以給分的地方

------
=.=???
eath199
一般會員


發表:23
回覆:33
積分:16
註冊:2006-12-07

發送簡訊給我
#10 引用回覆 回覆 發表時間:2007-02-13 19:03:49 IP:203.203.xxx.xxx 訂閱
在你的 dll project 裡 , file-->new--> form 。
動態的form,在使用前當然要先 new 出來,才能使用。
如果form 不要show 出來,在new完後不要下 show 或 ShowModal ,
應該就不會顯示(show)出來了,不然在給它下個 hide(),也可以~~:p
dll(api)放MSComm元件,如果是要給它人二次開發用的,會有不太妥當的地方,
至少在用你的dll(api)檔時,本身的電腦要先註冊MSComm元件。
=====================================================================
想請教一下,因為第一次寫DLL,所以很多不懂
如果建立一個FORM IN DLL中 那要如何從主要介面上呼叫到DLL中的FORM元件 以及EVENT
salo0610
高階會員


發表:42
回覆:120
積分:107
註冊:2003-02-18

發送簡訊給我
#11 引用回覆 回覆 發表時間:2007-02-15 16:52:55 IP:202.39.xxx.xxx 訂閱

===================引 用 文 章===================
想請教一下,因為第一次寫DLL,所以很多不懂
如果建立一個FORM IN DLL中?那要如何從主要介面上呼叫到DLL中的FORM元件? 以及EVENT
=====================================================================

hello,據我所知,如果 要~~主要介面上呼叫到DLL中的FORM元件? 以及EVENT

DLL 要寫一個介面,讓主要介面呼叫使用,無法直接呼叫。

例如:
dll 裡:
extern "C" __declspec(dllexport) int __stdcall shomAForm();
int __export __stdcall shomAFormr()
{
if( frmA ==null ){
frmA = new TfrmA(NULL);
}
frmA -> show();
return 1;

}


主要介面:
extern "C" __declspec(dllimport) int __stdcall shomAForm();

void __fastcall TForm1::Button1Click(TObject *Sender)
{

shomAForm();
}
就可以 show dll 裡產生的 form 了。


如果有說錯,請多多包涵~~


系統時間:2024-05-06 19:34:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!