請問 如何 讓我的程式 不要 被重複開啟呢? |
答題得分者是:syntax
|
elva349
一般會員 ![]() ![]() 發表:15 回覆:21 積分:17 註冊:2007-04-17 發送簡訊給我 |
我有參考了站內的一些文章 都找不到 怎麼解決
有一篇跟我很類似的 但是我看不懂... http://delphi.ktop.com.tw/board.php?cid=30&fid=71&tid=33852 if Form1 = Nil then Form1 := TForm1.Create (Self); Form1.Show; "Nil then" 和 ":=" 還有 "Tform1.Creat(Self)" 是什麼意思 !? 不好意思 新手發問...麻煩大家了... |
taishyang
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
pcboy
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:177 回覆:1838 積分:1463 註冊:2004-01-13 發送簡訊給我 |
[Delphi][發表] 用程序 (process) 數量判斷是否重複執行函式
http://delphi.ktop.com.tw/board.php?cid=30&fid=72&tid=86113
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案! 子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問! |
elva349
一般會員 ![]() ![]() 發表:15 回覆:21 積分:17 註冊:2007-04-17 發送簡訊給我 |
多謝 我已經能夠讓程式不要重複開啟 但是...有些地方我不太懂
在 http://delphi.ktop.com.tw/board.php?cid=168&fid=914&tid=59477 中~ GeorgeKu 提到 在我的 Project1.cpp 中加入下面紅色的字 就可以 讓我程式不被重複執行 [code cpp] #include #pragma hdrstop //--------------------------------------------------------------------------- USEFORM("Unit1.cpp", Form1); //--------------------------------------------------------------------------- WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { HANDLE mutex; const char ProgramName[]="project1";//應用程式名稱 try { mutex=CreateMutex(NULL,true,ProgramName);//設定互斥旗標 if(GetLastError()==ERROR_ALREADY_EXISTS)//系統中已開啟過就不再啟動本程式 { ReleaseMutex(mutex); return 0; } Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); } catch (...) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } ReleaseMutex(mutex); return 0; } [/code] 但是我想請問的是 行的HANDLE mutex; ? 這個跟有什麼關係嗎? ===================引 用 taishyang 文 章=================== 你要找的是給BCB用的吧? 請用[重複執行] 當關鍵字搜尋 |
syntax
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
向 Windows 註冊一組唯一的編號
註冊過在註冊,就會出錯,表示程式已經執行 ReleaseMutex(mutex); 結束時釋放 ===================引 用 elva349 文 章=================== 多謝 我已經能夠讓程式不要重複開啟 但是...有些地方我不太懂 在 http://delphi.ktop.com.tw/board.php?cid=168&fid=914&tid=59477 中~ GeorgeKu 提到 在我的 Project1.cpp 中加入下面紅色的字 就可以 讓我程式不被重複執行 [code cpp] #include #pragma hdrstop //--------------------------------------------------------------------------- USEFORM("Unit1.cpp", Form1); //--------------------------------------------------------------------------- WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { HANDLE mutex; const char ProgramName[]="project1";//應用程式名稱 try { mutex=CreateMutex(NULL,true,ProgramName);//設定互斥旗標 if(GetLastError()==ERROR_ALREADY_EXISTS)//系統中已開啟過就不再啟動本程式 { ReleaseMutex(mutex); return 0; } Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); } catch (...) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } ReleaseMutex(mutex); return 0; } [/code] 但是我想請問的是 行的HANDLE mutex; ? 這個跟有什麼關係嗎? ===================引 用 taishyang 文 章=================== 你要找的是給BCB用的吧? 請用[重複執行] 當關鍵字搜尋 |
elva349
一般會員 ![]() ![]() 發表:15 回覆:21 積分:17 註冊:2007-04-17 發送簡訊給我 |
|
暗黑破壞神
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
|
elva349
一般會員 ![]() ![]() 發表:15 回覆:21 積分:17 註冊:2007-04-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |