當前位置:編程學習大全網 - 源碼下載 - 易語言如果實現壹個程序只能運行壹個,當妳再次運行的時候自動彈出主窗口!

易語言如果實現壹個程序只能運行壹個,當妳再次運行的時候自動彈出主窗口!

用創建互斥體的方式才能達到,只檢測進程名是沒用的,改個名字還是能運行。

'用到的dll命令

.版本 2

.DLL命令 CreateMutex, 整數型, "kernel32.dll", "CreateMutexA"

.參數 互斥體結構, SECURITY_ATTRIBUTES

.參數 擁有互斥體, 邏輯型

.參數 互斥體對象的名字, 文本型

.DLL命令 WaitForSingleObject, 整數型, , "WaitForSingleObject"

.參數 hHandle, 整數型

.參數 dwMilliseconds, 整數型

.DLL命令 ReleaseMutex, 整數型, "kernel32.dll", "ReleaseMutex"

.參數 hMutex, 整數型

.DLL命令 CloseHandle, 邏輯型, , "CloseHandle"

.參數 hObject, 整數型

'用到的數據類型

.版本 2

.數據類型 SECURITY_ATTRIBUTES, , 安全性結構;

.成員 nLength, 整數型

.成員 lpSecurityDescriptor, 整數型

.成員 bInheritHandle, 整數型

'判斷是否已重復運行的子程序,其中的參數就是妳要創建的特征字符串,比如“我的程序”。

.版本 2

.子程序 系統_禁止重復運行, 邏輯型, , 已經運行返回真,否則返回假

.參數 特征字串, 文本型

.局部變量 句柄, 整數型

.局部變量 安全結構, SECURITY_ATTRIBUTES

句柄 = CreateMutex (安全結構, 真, 特征字串) ' 特征字串 是判斷是否存在這個互斥體

.如果真 (WaitForSingleObject (句柄, 100) = 258)

ReleaseMutex (句柄)

CloseHandle (句柄)

返回 (真)

.如果真結束

返回 (假)

  • 上一篇:天行源代碼
  • 下一篇:我想買諾基亞5800,咨詢大家點問題
  • copyright 2024編程學習大全網