需求:由于最近接到這樣的項目,甲方他們要求我們開發的功能加入他們原先已經存在的一個PB開發的應用程序中。唯一的目的是不想有兩個exe應用程序。
方案:把Delphi的應用程序用dll的形式打包,然后在PB里調用。
設計:
一、 PB部分
1、新建一個非可視化的類n_cst_demo,我們把同一模塊的調用都放到 這個類里。
2、定義API調用。在Declare---Local External Functions里定義
//handle : 是當前窗口的句柄 ; param : 其他需要的參數
SUBROUTINE show_demo(uLong handle , String param) LIBRARY " 3、新建一個窗體w_main。
4、新建一個菜單m_dll。
5、建一個菜單項就叫測試dll。Clicked事件里寫上:
n_cst_demo n_pda n_pda = Create n_cst_demo n_pda.Show_Demo( Handle(ParentWindow) ,"ABCD1234") Destroy n_pda |
這樣我們的PB部分就算完成了。
二、Delphi部分
1、新建一個dll Project,
library Project1; uses {$R *.RES}
end; //記住,在Delphi里字符串參數需要用PChar類型定義 exports begin |
新聞熱點
疑難解答
圖片精選