Get the App
SLTechnology News&Howtos  ›  Development  › 

How to use the bat implementation to allow only one instance to run

Shulou Source: shulou.com Published: 2022-06-03 08:33:01 11月15日 Update

This article will explain in detail how to use bat implementation to run only one instance. The editor thinks it is very practical, so I share it with you as a reference. I hope you can get something after reading this article.

The code is as follows:

; my first installation script

! include "MUI2.nsh"

! define DIR "D:\ workspace\ nsis\ files"

Name "installer"

Icon "${DIR}\ setup128.ico"

OutFile "setup.exe"

InstallDir "$PROGRAMFILES\ kaserv"

RequestExecutionLevel admin

! insertmacro MUI_PAGE_DIRECTORY

! insertmacro MUI_PAGE_INSTFILES

! insertmacro MUI_LANGUAGE "SimpChinese"

Function .onInit

System::Call 'kernel32::CreateMutexA (I 0J I 0J t "SMAPLE_MUTEX") I. r 1? e'

Pop $R0

StrCmp $R0 0 + 3

MessageBox MB_OK | MB_ICONSTOP "only allow one instance to run"

Abort

FunctionEnd

; installer section

Section

SetOutPath $INSTDIR

File "${DIR}\ New text document (2) .txt"

File "${DIR}\ New text document .txt"

SetOutPath "$INSTDIR\ office"

File "${DIR}\ office\ *"

; shortcut

CreateShortCut "$DESKTOP\ test.lnk"$INSTDIR\ unsetup.exe"

CreateShortCut "$SMPROGRAMS\ test.lnk"$INSTDIR\ unsetup.exe"

WriteUninstaller "$INSTDIR\ unsetup.exe"

SectionEnd

Uninstall the program segment

Section "Uninstall"

RMDir / r "$INSTDIR"

Delete "$DESKTOP\ test.lnk"

Delete "$SMPROGRAMS\ test.lnk"

SectionEnd

This is the end of this article on "how to use bat implementation to allow only one instance to run". I hope the above content can be of some help to you, so that you can learn more knowledge. if you think the article is good, please share it out for more people to see.

Tags: Examples runs programs articles more good practical code content articles methods knowledge scripts references help related Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Docker vpn macOS Microsoft MariaDB