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

如何在BCB中重新執行自己的程序

答題得分者是:GrandRURU
pmpmpmpm
一般會員


發表:1
回覆:1
積分:0
註冊:2008-07-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-07-07 00:59:43 IP:218.165.xxx.xxx 訂閱
之前有看過flyup大提供的重新執行程式(http://delphi.ktop.com.tw/board.php?cid=30&fid=72&tid=26009),但是那是Deiphi的,要怎麼BCB寫出類似的程式?就像程式中設定一個按鈕,按下去後會重新執行(restart),不保留先前資料,單純就是再執行一次而已。用Winexec執行自己可以嗎?
GrandRURU
站務副站長


發表:240
回覆:1680
積分:1874
註冊:2005-06-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-07-07 08:10:47 IP:203.75.xxx.xxx 未訂閱
呵呵,今天才看到這個功能,真是方便的作法。趕快收錄下來!

其實 flyup大所寫的內容還蠻平易近人的,你也可以自己揣摩看看。
以下是我直接抄 flyup大的內容,轉成BCB格式,你看看這是不是很接近呢?

[code cpp]
void __fastcall TForm1::Button1Click(TObject *Sender)
{
PCHAR FullPrgmPath;
FullPrgmPath = PCHAR(Application->ExeName.c_str());

//ShowWindow(Form1->Handle, SW_HIDE);

WinExec(FullPrgmPath, SW_SHOW); // Or better use the CreateProcess function

Application->Terminate(); // or: Close;
}
[/code]

===================引 用 pmpmpmpm 文 章===================
之前有看過flyup大提供的重新執行程式(程式更新常做的事:重新執行自己的程序),但是那是Deiphi的,要怎麼BCB寫出類似的程式?就像程式中設定一個按鈕,按下去後會重新執行(restart),不保留先前資料,單純就是再執行一次而已。用Winexec執行自己可以嗎?
編輯記錄
GrandRURU 重新編輯於 2009-07-07 08:12:07, 註解 無‧
pmpmpmpm
一般會員


發表:1
回覆:1
積分:0
註冊:2008-07-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-07-07 10:36:10 IP:218.165.xxx.xxx 訂閱
請問PCHAR FullPrgmPath是代表甚麼意思?可以說明一下嗎?測試結果真的可以用。謝謝
GrandRURU
站務副站長


發表:240
回覆:1680
積分:1874
註冊:2005-06-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-07-07 10:40:51 IP:203.75.xxx.xxx 未訂閱
[code cpp]
typedef CHAR *PCHAR;
[/code]
===================引 用 pmpmpmpm 文 章===================
請問PCHAR FullPrgmPath是代表甚麼意思?可以說明一下嗎?測試結果真的可以用。謝謝
系統時間:2024-04-27 8:42:16
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!