xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡介

Delphi中制作DLL
?一 Dll的制作一般分為以下幾步:
1 在一個DLL工程里寫一個過程或函數
2 寫一個Exports關鍵字,在其下寫過程的名稱。不用寫參數和調用后綴。
二參數傳遞
1 參數類型最好與window C++的參數類型一致。不要用DELPHI的數據類型。
2 最好有返回值[即使是一個過程],來報出調用成功或失敗,或狀態。成功或失敗的返回值最好為1[成功]或0[失敗].一句話,與windows c++兼容。
3 用stdcall聲明后綴。
4 最好大小寫敏感。
5 無須用far調用后綴,那只是為了與windows 16位程序兼容。

三 DLL的初始化和退出清理[如果需要初始化和退出清理]
1 DLLProc[SysUtils單元的一個Pointer]是DLL的入口。在此你可用你的函數替換了它的入口。但你的函數必須符合以下要求[其實就是一個回調函數]。如下:
procedure DllEnterPoint(dwReason: DWORD);far;stdcall;
dwReason參數有四種類型:

DLL_PROCESS_ATTACH:進程進入時
DLL_PROCESS_DETACH進程退出時
DLL_THREAD_ATTACH

線程進入時
DLL_THREAD_DETACH 線程退出時
在初始化部分寫:
DLLProc := @DLLEnterPoint;
DllEnterPoint(DLL_PROCESS_ATTACH);
2 如Form上有TdcomConnection組件,就Uses Activex,在初始化時寫一句CoInitialize (nil);
3 在退出時一定保證DcomConnection.Connected := False,并且數據集已關閉。否則報地址錯。

四全局變量的使用
在widnows 32位程序中,兩個應用程序的地址空間是相互沒有聯系的。雖然DLL在內存中是一份,
但變量是在各進程的地址空間中,因此你不能借助dll的全局變量來達到兩個應用程序間的數據
傳遞,除非你用內存映像文件。

五、其他:調用方式按照標準的Windows調用方式.

六、關于參數傳遞
?Delphi程序之間調用DLL,如果要用String類型的話,要在引用的單元加上ShareMem 單元。
?如果Delphi寫的DLL供其他開發工具使用的話,不要使用String類型,用PAnsiChar類型。
盡量使用標準DLL接口。指的是傳遞的參數類型及函數返回類型不能是Delphi特有的,
比如string(AnsiString),以及動態數組和含有這些類型成員的復合類型(如記錄),也不
能是包含有這些類型成員數據成員的對象類型,以避免可能的錯誤。如果使用了string類型或
動態數組類型,且調用方不是Delphi程序,則基本上會報錯。如果調用方是Delphi但調用方或
被調用方沒有在工程文件的第一包含單元不是ShareMem,也可能會出錯。

七、關于回調Funciton
你可以把Callback函數看作是一種特殊的消息響應函數,一般來說我們不會自己調用這種函數,
而是有某些系統函數調用,而且不需要向后傳遞消息。 只要象C/C++這樣支持函數指針的語言都
有回調函數的概念,它實際上是向被調用函數傳一個你的函數地址,然后被調用函數向通過你傳
入的函數地址來調用你的函數 。

以上是結構化回調,到高級語言Object Pascal、C++中回調函數并沒有退出,反而得到延伸與
擴展,在面向對像中的回調,其實是指面向對像中類對像的事件,事件就是原始的回調函數。面
向對像, 將回調函數定義成事件過程,在程序引用對像時,若指定了對像的過程事件后,那么在
要進行事件觸發的地方檢查事件過程是否分配,如果分中的就執行事,也就是執行了回調函數。

資源截圖

代碼片段和文件信息

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????845??2007-01-20?13:31??Windows面向對像回調實例\GroupPObjCallBack.bpg

?????文件????????434??2007-01-20?15:02??Windows面向對像回調實例\PObjCallBack.cfg

?????文件???????2446??2007-01-20?15:02??Windows面向對像回調實例\PObjCallBack.dof

?????文件???????3628??2007-01-20?14:56??Windows面向對像回調實例\PObjCallBack.dpr

?????文件????????876??2007-01-20?11:55??Windows面向對像回調實例\PObjCallBack.res

?????文件????????434??2007-01-20?13:30??Windows面向對像回調實例\PObjCallBackForm.cfg

?????文件???????2446??2007-01-20?13:30??Windows面向對像回調實例\PObjCallBackForm.dof

?????文件????????218??2007-01-20?13:30??Windows面向對像回調實例\PObjCallBackForm.dpr

?????文件????????876??2007-01-20?13:30??Windows面向對像回調實例\PObjCallBackForm.res

?????文件???????5818??2007-01-20?14:54??Windows面向對像回調實例\Unit_ObjCallBack.dcu

?????文件???????1251??2007-01-20?14:55??Windows面向對像回調實例\Unit_ObjCallBack.dfm

?????文件???????2900??2007-01-20?14:55??Windows面向對像回調實例\Unit_ObjCallBack.pas

?????目錄??????????0??2007-01-20?15:02??Windows面向對像回調實例

?????文件????????434??2007-01-20?11:23??Windows結構化回調實例\PWinCallBack.cfg

?????文件???????2446??2007-01-20?11:23??Windows結構化回調實例\PWinCallBack.dof

?????文件????????261??2007-01-20?11:23??Windows結構化回調實例\PWinCallBack.dpr

?????文件????????876??2007-01-20?09:13??Windows結構化回調實例\PWinCallBack.res

?????文件???????5572??2007-01-20?11:41??Windows結構化回調實例\Unit_WindowsCallBack.dcu

?????文件???????1338??2007-01-20?11:39??Windows結構化回調實例\Unit_WindowsCallBack.dfm

?????文件???????2351??2007-01-20?14:53??Windows結構化回調實例\Unit_WindowsCallBack.pas

?????文件????????434??2007-01-20?11:33??Windows結構化回調實例\WindowsCallBack.cfg

?????文件???????2446??2007-01-20?11:33??Windows結構化回調實例\WindowsCallBack.dof

?????文件???????2099??2007-01-20?11:33??Windows結構化回調實例\WindowsCallBack.dpr

?????文件????????876??2007-01-20?09:12??Windows結構化回調實例\WindowsCallBack.res

?????目錄??????????0??2007-01-20?11:42??Windows結構化回調實例

-----------?---------??----------?-----??----

????????????????41305????????????????????25


評論

共有 條評論