防止程式多次開啟

2021-05-21 17:31:57 字數 1280 閱讀 6342

static class program

///

/// 獲取正在執行的例項,沒有執行的例項返回null;

///

public static process runninginstance() }

} return null;

} ///

/// 顯示已執行的程式。

///

public static void handlerunninginstance(process instance) }

以下是事件檢視器單開程式

///

/// 該函式設定由不同執行緒產生的視窗的顯示狀態。

///

/// 視窗控制代碼

/// 指定視窗如何顯示。檢視允許值列表,請查閱showwlndow函式的說明部分。

/// 如果函式原來可見,返回值為非零;如果函式原來被隱藏,返回值為零。

[system.runtime.interopservices.dllimport("user32.dll")]

private static extern bool showwindowasync(intptr hwnd, int cmdshow);

///

/// 該函式將建立指定視窗的執行緒設定到前台,並且啟用該視窗。鍵盤輸入轉向該視窗,並為使用者改各種可視的記號。系統給建立前台視窗的執行緒分配的許可權稍高於其他執行緒。

///

/// 將被啟用並被調入前台的視窗控制代碼。

/// 如果視窗設入了前台,返回值為非零;如果視窗未被設入前台,返回值為零。

[system.runtime.interopservices.dllimport("user32.dll")]

private static extern bool setforegroundwindow(intptr hwnd);

private const int ws_shownormal = 1;

//sysclass類**在http://blog.csdn.net/fagintwo/archive/2010/05/11/5577339.aspx

sysclass.開啟事件檢視器();}}

///

/// 事件管理器是否開啟

///

/// 事件管理器是否開啟

///

/// 顯示已執行的程式。

///

public static void handlerunninginstance(system.diagnostics.process instance)

c winform 防止窗體多次開啟

在使用mdi子窗體時,如果僅僅是使用 from.show 那麼我們單擊幾次選單,就會開啟幾個同樣的子窗體。可以用這段 防止這種情況。首先新增乙個函式,這個函式用於檢測指定的子窗體是否已經開啟,如果開啟則啟用這個子窗體,否則返回false值 private bool showchildrenform ...

Delphi 防止程式多次執行

program project1 uses forms,windows,unit1 in unit1.pas var hmutex hwnd ret integer begin hmutex createmutex nil,false,test ret getlasterror if ret err...

C 防止程式多次執行

經過我的測試,還比較好用,但是有個問題,如果不登出,用另乙個使用者進入,則程式不能判斷出已執行。所以只限於用在單使用者環境,還是不太完美。class program console.writeline 正在執行中 console.readline public static class oneins...