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

關於package勾選bulid with runtime packages的問題?

尚未結案
juliar
一般會員


發表:2
回覆:2
積分:0
註冊:2005-08-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-20 11:51:11 IP:220.136.xxx.xxx 未訂閱
之前有看了很多文章,覺得package的一些優點很好.... 想把程式改寫為>[> 改了 >
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-20 12:37:56 IP:211.22.xxx.xxx 未訂閱
1.Build with runtime package是設定所寫的程式要不要連結系統內建的一些程式庫,如果設定不勾選那麼就是靜態連結,如果勾選就是動態連結,至於連結哪些程式庫,實在不是一般人可以一眼看穿推斷的出來的,因此最好使用INSTALLSHIELD來幫忙做打包的工作。 2.使用多項功能可以將個別的MODULE做成DLL,在程式執行中動態或靜態的連結呼叫使用。 ---------------------------------------------- We will either find a way, or make one. -Hannibal -。
juliar
一般會員


發表:2
回覆:2
積分:0
註冊:2005-08-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-20 13:43:13 IP:220.136.xxx.xxx 未訂閱
引言: 1.Build with runtime package是設定所寫的程式要不要連結系統內建的一些程式庫,如果設定不勾選那麼就是靜態連結,如果勾選就是動態連結,至於連結哪些程式庫,實在不是一般人可以一眼看穿推斷的出來的,因此最好使用INSTALLSHIELD來幫忙做打包的工作。 2.使用多項功能可以將個別的MODULE做成DLL,在程式執行中動態或靜態的連結呼叫使用。 ---------------------------------------------- We will either find a way, or make one. -Hannibal -。
首先謝謝你的回答,我了解勾選是靜態,不勾是動態, 不過不知道應該在程式的哪邊引用.. 應該是我寫的太亂了吧,真抱歉,再重新整理一遍: 我的程式是想先設一個主程式,去連五個程式,五個程式裡面會共用的拉一個 > < 問題粉多捏,文章我找了有看沒有懂,不知道怎麼做才好? 感謝大大幫忙,多多指教, >
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-20 14:06:08 IP:211.22.xxx.xxx 未訂閱
引言: 問題1.module要怎麼處理?不知道要怎樣做讓其它五個程式可以去連結用到,其它五個程式去連結它應該是要用靜態連結嗎?怎麼做呢? 2.主程式的code目前知道怎樣去呼叫其他的五個程式,不過要做成.exe檔,和一般的做法哪裡不一樣呢?怎樣compile? 3.其它五個程式要做成package是只要勾選bulid whit...那個選項,然後compile,就能成為package嗎?做成一個package好呢?還是五個? 4.產生的主程式和一般不是做package連結的的主程式在檔案上有哪些不同? 5.主程式去連結其它五個程式需要的檔案是其它五個package的.bpl檔嗎?還有需要什麼嗎? 6.在主程式或其它五個程式compile方面,需要特別注意到bpl output directory和dcp output directory的是哪個需要呢? 7.若有勾選build with runtime packages 下面的連結,用tdump去找,只能找.exe,有時只能找到一、二個,有時沒有,這樣怎麼build呢? > <
1.把共用的函數寫在一個副程式裡,把要用的函數EXPORT出來,副程式獨立編譯成DLL,給其它的五個副程式呼叫。 2.分別的五個EXE就像寫成一般的AP一樣COMPILE,主程式視需要使用WINEXEC,SHELLEXECUTE,CREATEPROCESS等API呼叫即可(可視需要要不要帶命令列參數)。 3.BUILD WITH...等選項,是要決定要不要靜態連結你所INSTALL或系統內建的函數庫,跟你額外建立出來的DLL沒有關係。 4.差別只在於程式可不可以獨立執行,還是要呼叫外在的LIB(PACKAGE,DLL)。 5.五個程式做成獨立的執行檔,不需要做成獨立的PACKAGE,除非你的五個執行檔中式共用函數,將來會給其他程式使用。 6.一般是不需要,BPL是(指定輸出路徑而已),將來會給其他程式呼叫使用;另外LIB PATH要注意是否有你呼叫的額外程式庫路徑,否則會無法連結程式庫。 7.不是很懂你的意思,我想大概跟第3項差不多吧! 請參考! ----------------------------------------------
juliar
一般會員


發表:2
回覆:2
積分:0
註冊:2005-08-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-21 12:21:52 IP:220.136.xxx.xxx 未訂閱
感覺大大的做法有點像用dll的做法耶, 其實dll的做法跟package的做法挺像的,只不過compile後出來的檔案不一樣 像package專案的產出的是.dcp和.bpl檔,dll專案是LIB檔DLL檔~ 目前是想把共用的Module獨立出來,想要製做成.dcp讓其他五個project可以靜態連結使用, 我的做法是開一個new package,把module的.pas檔加入,然後compile,想產出.dcp檔,不過會有錯誤訊息捏,     請問哪裡做錯呢? 感謝!!
bugmans
高階會員


發表:95
回覆:322
積分:188
註冊:2003-04-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-22 06:56:51 IP:218.166.xxx.xxx 未訂閱
根據你的描述,我覺得這篇文章可能對你有幫助 以 Delphi Package 架構多人開發應用程式環境http://delphi.ktop.com.tw/topic.php?opic_id=42968
引言: 首先謝謝你的回答,我了解勾選是靜態,不勾是動態, 不過不知道應該在程式的哪邊引用.. 應該是我寫的太亂了吧,真抱歉,再重新整理一遍: 我的程式是想先設一個<>主程式(對應文章所說的>, 去連<>五個程式(對應文章所說的會計子系統,人事子系統,庫存子系統), 五個程式裡面會共用的拉一個<>>。想做成>(出自"以 > 問題 > < 問題粉多捏,文章我找了有看沒有懂,不知道怎麼做才好? 感謝大大幫忙,多多指教, > < face="Verdana, Arial, Helvetica"> 另外我有個問題是其他的語言怎麼達到相同的功能,具我我知Visual Basic好像沒有類似的功能 發表人 - bugmans 於 2005/08/22 07:13:32
sanhang
一般會員


發表:12
回覆:25
積分:17
註冊:2002-08-31

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-08-22 12:43:45 IP:202.39.xxx.xxx 未訂閱
引言: 首先謝謝你的回答,我了解勾選是靜態,不勾是動態, 不過不知道應該在程式的哪邊引用.. 應該是我寫的太亂了吧,真抱歉,再重新整理一遍: 我的程式是想先設一個主程式,去連五個程式,五個程式裡面會共用的拉一個 > < face="Verdana, Arial, Helvetica">
系統時間:2024-05-19 15:23:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!