delphi怎么生成exe文件 如何在Delphi中調(diào)用一個外部程序?
如何在Delphi中調(diào)用一個外部程序?Delphi調(diào)用外部應(yīng)用程序使用以下引用,WinExecWinExec(# 34 notepad . exe readme . txt # 34,SW_SHOW)
如何在Delphi中調(diào)用一個外部程序?
Delphi調(diào)用外部應(yīng)用程序使用以下引用,
WinExec
WinExec(# 34 notepad . exe readme . txt # 34,SW_SHOW)
ShellExecute
你必須首先參考單元:使用ShellAPI。
1.標準用法
ShellExecute函數(shù)原型和參數(shù)含義如下:
函數(shù)ShellExecut: HWND操作,文件名,Parameters,Directory: PChar ShowCmd: Int: HINST stdcall
●hWnd:用于指定父窗口句柄。當(dāng)函數(shù)調(diào)用過程中出現(xiàn)錯誤時,它將作為Windows消息窗口的父窗口。比如可以設(shè)置為應(yīng)用主窗口的句柄,也就是application。句柄,也可以將其設(shè)置為桌面窗口的句柄(通過使用GetDesktopWindow函數(shù)獲得)。
●操作:用于指定要執(zhí)行的操作。在那里 "開放 "操作是指執(zhí)行FileName參數(shù)指定的程序,或者打開FileName參數(shù)指定的文件或文件夾; "印刷 "操作意味著打印由FileName參數(shù)指定的文件; "探索 "操作意味著瀏覽由FileName參數(shù)指定的文件夾。當(dāng)參數(shù)設(shè)置為nil時,默認操作 "開放 "被執(zhí)行。
●文件名:用于指定要打開的文件名、要執(zhí)行的程序文件名或要瀏覽的文件夾名。
●參數(shù):如果FileName參數(shù)是可執(zhí)行程序,則該參數(shù)指定命令行參數(shù),否則該參數(shù)應(yīng)為nil或PChar(0)。
●目錄:用于指定默認目錄。
●ShowCmd:如果FileName參數(shù)是可執(zhí)行程序,則該參數(shù)指定程序窗口的初始顯示模式,否則該參數(shù)應(yīng)設(shè)置為0。
如果ShellExecute函數(shù)調(diào)用成功,返回值是被執(zhí)行程序的實例句柄。如果返回值小于32,則表明有錯誤。
以上只是ShellExecut:協(xié)議格式,該函數(shù)將打開默認瀏覽器并鏈接到指定的URL地址。如果用戶安裝了多個瀏覽器機,功能將基于Windows。9x/NT注冊表中http協(xié)議處理程序的設(shè)置決定了啟動哪個瀏覽器。
格式1:。如:s。如:shellexecute (handle,# 34 open # 34,# 34,nil,nil,SW _ shownormal)
如果FileName參數(shù)設(shè)置為# 34 mailtoechop 9-@ .com # 34協(xié)議格式,該函數(shù)將啟動默認的郵件客戶端程序,如Microsoft Outlook(包括Microsoft Outlook Express)或Netscap:就像:
Shellexecut: # 34,nil,nil,SW _ shownormal)打開一個新的郵件窗口。
格式2:mailto:用戶帳戶@郵件服務(wù)器地址。例如:
ShelleExecut: who @ # 34,nil,nil,SW _ shownormal)打開一個新的郵件窗口,自動填寫收件人地址。
如果指定了多個收件人地址,收件人地址之間必須用分號或逗號分隔(下同)。
格式三:mailto:用戶賬號@郵件服務(wù)器地址?主題電子郵件主題和。amp正文郵件正文,例如:
ShelleExecut: who @ subject h
為什么執(zhí)行由DELPHi生成的EXE比,直接運行DELPHI速度要慢很多?
用delphi編譯啟動程序時,delphi會先把表單歸檔,然后替換。代碼文件被編譯成的中間文件。dcu,然后生成exe文件,最后啟動exe文件。直接運行exe省略了中間環(huán)節(jié),當(dāng)然速度更快。