成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

利用互斥對象判斷該對象是否存在來在初始化程序里結(jié)束程序運(yùn)行解決每個應(yīng)用程序只能運(yùn)行一個實例

隨著互聯(lián)網(wǎng)的迅猛發(fā)展,計算機(jī)技術(shù)的不斷提升,越來越多的應(yīng)用程序被開發(fā)出來。但是,有些應(yīng)用程序需要限制其只能運(yùn)行一個實例,這就需要用到互斥對象。一、新建MFC項目要創(chuàng)建一個只能運(yùn)行一個實例的應(yīng)用程序,首

隨著互聯(lián)網(wǎng)的迅猛發(fā)展,計算機(jī)技術(shù)的不斷提升,越來越多的應(yīng)用程序被開發(fā)出來。但是,有些應(yīng)用程序需要限制其只能運(yùn)行一個實例,這就需要用到互斥對象。

一、新建MFC項目

要創(chuàng)建一個只能運(yùn)行一個實例的應(yīng)用程序,首先需要新建一個 MFC 項目。具體操作如下:

1. 打開 Visual Studio 編輯器,選擇“新建項目”。

2. 在彈出的對話框中,選擇“Visual C ” -> “MFC” -> “MFC 應(yīng)用程序” -> 輸入名稱 -> 點擊“確定”。

二、設(shè)置應(yīng)用程序向?qū)?/p>

新建 MFC 項目后,需要進(jìn)行應(yīng)用程序向?qū)У脑O(shè)置。具體步驟如下:

1. 在彈出的對話框中,選擇默認(rèn)設(shè)置直接點擊“確定”即可。

三、定義句柄

在應(yīng)用程序類中定義一個句柄,以便后續(xù)使用。具體步驟如下:

1. 按照圖示步驟,在應(yīng)用程序類的頭文件中添加以下代碼:

```C

HANDLE hMutex;

```

四、創(chuàng)建互斥對象

在應(yīng)用程序中創(chuàng)建互斥對象,以判斷該對象是否存在。具體操作如下:

1. 在 InitInstance 函數(shù)中,添加以下代碼:

```C

hMutex CreateMutex(NULL, 0, _T("123"));

```

五、判斷互斥對象

如果互斥對象已經(jīng)存在,那么就返回 false 并結(jié)束當(dāng)前應(yīng)用程序的運(yùn)行。具體操作如下:

```C

if (hMutex ! NULL GetLastError() ERROR_ALREADY_EXISTS)

{

CloseHandle(hMutex);

return FALSE;

}

```

六、運(yùn)行測試

最后,打開運(yùn)行編譯生成的可執(zhí)行程序進(jìn)行多次運(yùn)行測試。如果程序已經(jīng)運(yùn)行,則無法再次啟動。

以上就是利用互斥對象判斷該對象是否存在來實現(xiàn)每個應(yīng)用程序只能運(yùn)行一個實例的方法。

標(biāo)簽: