설치 프로그램이 끝나면 .exe 파일을 시작한 다음 설치를 종료하고 싶습니다. 나는 아래 exe를 시작하는 다양한 방법을 시도했지만, 그 중 어느 것도 옳지 않다. .exe 파일은 로그인 화면을 표시하고 사용자가 사용자 이름과 암호를 입력하면 기본 응용 프로그램이 시작됩니다.NSIS 설치 프로그램 실행 후 실행 시작
폴더의 .exe를 두 번 클릭하면 로그인 프롬프트가 표시되고 자격 증명을 입력하면 응용 프로그램이 시작됩니다.
nsExec을 ExecShell에게ExecDos::exec /NOUNLOAD /ASYNC '$Path${APP_FILE_NAME}'
Sleep 30000
비동기
ExecDos
ExecShell "" '"$Path${APP_FILE_NAME}"'
ExecDos
ExecDos::exec '$Path${APP_FILE_NAME}'
: 다음 방법은이 과정을 복제하기 위해 설치 프로그램에서 시도되었다
이상하게도 비동기 호출이 작동하여 로그인 화면을 시작한 다음 설치 프로그램을 끝내고 싶습니다.
위의 모든 방법은 예상대로 로그인 화면을 표시하지만 응용 프로그램에 로그인하면 기본 응용 프로그램이 빈 회색 화면에 나타납니다 ... 단순히 .exe를 두 번 클릭해도 표시되지 않는 내용 $ Path 폴더를 열고 정상적으로 로그인하십시오.
.exe를 시작하기 위해 이러한 호출을하는 데 문제가 있습니까?
SetOutPath $INSTDIR
ExecShell "" '"$INSTDIR\myapp.exe"'
주요 응용 프로그램을 실행 :
미국 않습니다합니까 ng'ExecShell "" '...''Exec '...' '보다는 의미가 있습니까? –
@ChrisMorgan NT6 +에서 ExecShell은 ShellExecute()를 사용하고 Exec은 CreateProcess()를 사용합니다. 응용 프로그램이 권한 상승이 필요하고 아직 승격되지 않은 경우 CreateProcess()가 실패합니다. – Anders
감사! 그건 의미가 있습니다. –