bat脚本实例实现只允许运行一个实例(安装程序/创建快捷方式脚本)
2014-05-12来源:

代码如下:

;我的第一个安装脚本

!include "MUI2.nsh"

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

Name "安装程序"

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 0,i 0,t "SMAPLE_MUTEX") i .r1 ?e'

 Pop $R0

 StrCmp $R0 0 +3

 MessageBox MB_OK|MB_ICONSTOP "只允许运行一个实例"

 Abort

FunctionEnd

;安装程序段

Section

SetOutPath $INSTDIR

File "${DIR}\新建文本文档 (2).txt"

File "${DIR}\新建文本文档.txt"

SetOutPath "$INSTDIR\office"

File "${DIR}\office\*"

;快捷方式

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

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

WriteUninstaller "$INSTDIR\unsetup.exe"

SectionEnd

;卸载程序段

Section "Uninstall"

RMDir /r "$INSTDIR"

Delete "$DESKTOP\test.lnk"

Delete "$SMPROGRAMS\test.lnk"

SectionEnd

更多信息请查看IT技术专栏

推荐信息
Baidu
map