NSIS의 새비지, 현재 응용 프로그램이 작동하는지 여부를 확인하기 위해 nsProcess 플러그인을 구현하려고했습니다! 예제 코드에서 같은 것을 구현하는 데 성공했지만, 프로젝트에서 같은 것을 구현하려고 시도했을 때, 아래 이미지 메시지 상자에 표시된대로 예상하지 못한 결과가 발생했습니다! 왜 내가 이걸 얻는거야 ?? 제발 날 안내해 줄 수 있어요. 사전에 도와 주셔서 감사합니다 :)NSIS : NsProcess Unexpected Output
프로젝트 Snipet!
!include "MUI2.nsh"
;!include "MUI.nsh"
!include LogicLib.nsh
!include "StrFunc.nsh"
!include "FileFunc.nsh"
!include WinMessages.nsh
!include "nsProcess.nsh"
;!include "FindProcess.nsh"
#Dummy Section
...
#EndSecton
!macro CheckAppRunning_ _FILE _ERR
App_Running_Check:
${nsProcess::FindProcess} "MyApp.exe" $R0
MessageBox MB_OK "$R0"
${If} $R0 == 0
MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "Please stop App.exe before continuing" /SD IDCANCEL IDRETRY App_Running_Check
Quit
${EndIf}
notRunning:
!macroend
Function .onInit
!insertmacro CheckAppRunning_ `MyApp.exe` $R0
FunctionEnd
$ R0는이 값을 반환합니다! 왜 ???
안녕하세요! 답장을 보내 주셔서 감사합니다. 하지만 하나의 버전 (NSIS 3.01) 만 설치되어 있기 때문에 예제 (http://nsis.sourceforge.net/NsProcess_plugin)에서 별도로 구현하면 어떻게 작동합니까? – faisal
하나의 .nsi 스크립트에 '유니 코드 true'가 포함될 수 있습니다. 거짓이거나 존재하지 않는다고 말합니다. 전체 코드를 게시하지 않았기 때문에 말하기가 어렵습니다! – Anders
안녕하세요, Anders, 고맙습니다. 문제는 유니 코드 플래그 때문이었습니다! 다시 한번 감사드립니다. – faisal