◆多重起動防止

「◆多重起動防止」の編集履歴(バックアップ)一覧に戻る

◆多重起動防止 - (2009/01/01 (木) 04:13:37) の編集履歴(バックアップ)


情報


概要

多重起動を防止します。
ここでは確実性の高いMutex(API)を使った方法を載せています。

本体

#-----------------------------------------------------------------------
#最上部
#-----------------------------------------------------------------------
#定義(いじらないように)
●CreateMutex(sec,owner,{参照渡し}neme) =DLL("kernel32.dll",
"HANDLE CreateMutexA(
LONG pSAttr,//0固定
BOOL fOwner,//所有者
LPCTSTR sMutexName//オブジェクト名
)")
●ReleaseMutex(hMutex) =DLL("kernel32.dll",
"BOOL ReleaseMutex(
HANDLE hMutex // ミューテックスのハンドル
)")
●CloseHandle(hObject)=DLL("kernel32.dll",
"BOOL CloseHandle(
HANDLE hObject // オブジェクトのハンドル
)")
●GetLastError()=DLL("kernel32.dll","DWORD GetLastError()")
ミューテックスはCreateMutex(0,0,「なでしこ」)
GetLastError()
もしそれが/*ERROR_ALREADY_EXISTS*/183ならば、多重起動検知処理。

#----------------------------------------------------------
#----------------------------------------------------------
#オプション
●多重起動検知処理
  「多重起動です」という。
  終わり。

母艦の閉じた時は~
  ReleaseMutex(ミューテックス)。
  CloseHandle(ミューテックス)。
#-----------------------------------------------------------------------
#-----------------------------------------------------------------------


名前:
コメント:


ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。