어디서나 찾을 수있는 정보가없는 것 같습니다. 문제가 발생할 때까지 기다리지 않겠습니다. 불행하게도 이것은 일반적으로 게시하는 것보다 약간 더 광범위한 질문이지만, 아직 원인을 파악하고 재생산하고 세부 정보를 수집하고 완전히 문서화해야하므로 다음에 발생할 때까지 기다릴 수 있습니다. 능력있는 사람들은 더 많은 정보를 수집하고 제공합니다. 그래서, 내가 아는 바를 기반으로, 누군가가 이것을 밝힐 수 있기를 희망합니다.Inno Setup을 다시 시작한 후 관리자 로그인을 완료해야합니다.
경우에 따라 Inno 설치 프로그램을 다시 시작해야 관리자가 다시 시작해야 로그인 할 수 있습니다. 나는 그것이 이미 보류중인 다른 변경 때문에 설치시 할 수없는 System32
의 파일 등록과 관련 있다고 생각합니다. 이 (내가 생각하는) 세 가지가 랜덤 (무작위로 생성 된 {temp}
일정 유사)라는 이름의 난 (후 향적으로, 몇 가지 생각 후)을 RunOnce
에 연결해야 가정합니다 Windows
디렉토리에있는 파일이 있었다 일어난 한 경우에
레지스트리 키 (다음 번에 내가 이런 일이 일어날 때를 보게 될 것입니다.)는 설치를 완료하기 위해 관리자로 로그인 한 후 다시 실행한다고 가정합니다. 관리자가 로그인하기 전에는 관리자가 로그인 할 때까지 실행되지 않는 것으로 보이며 표준 사용자가 로그인하면 설치가 불완전한 상태로 유지됩니다. 관리자가 로그인하면 이러한 파일이 사라지고 설치된 응용 프로그램이 다음과 같이 표시되지 않고 예상대로 작동합니다.
클래스는 응용 프로그램의 관리자가 로그온하기 전에 실행할 때 나타나고 설치가 완벽하게 완료 할 수
오류를 등록하지.
내가하고 싶은 일은 재부팅 후 로그인 한 사용자의 권한에 관계없이 설치가 완전히 완료되었는지 확인하는 것입니다. 예를 들어 응용 프로그램이 중앙 집중식으로 배포 된 것처럼 (예 : SCCM을 통해) 관리자는 PC에서 로그인 할 수 있으며 응용 프로그램은 SCCM과 같은 것을 사용할 때까지 실행되지 않습니다. 나는 실제로 Inno Setup이 다음 로그온시 또는 유사한 방법으로 SYSTEM
계정으로 실행되도록 파일을 설정하여이 작업을 자동으로 처리하지 않는다는 사실에 상당히 놀랐습니다.
누군가가 여기에 무슨 일이 일어나고 있는지 대략 설명 할 수 있다면 파일의 이름을 찾는 방법 (나는 RunOnce
레지스트리 키를 읽음으로써이를 수행 할 수 있지만 필자는 필요한 값의 이름을 알아야 할 것입니다. 읽기)를 실행하고 설치를 완료하기 위해 수행해야 할 작업은 예를 들어 예약 된 작업을 사용하여 로그온시 SYSTEM
으로 실행하거나 다른 방법으로이를 처리 할 수 있어야합니다.
마틴. 이것은 정확히 내가 필요로하는 정보이며, 지금 이것을 테스트 할 수 있어야합니다. 이 사실을 알면 나는 그 원인을 알 수 있다고 생각합니다. 필요할 때만 실행되는 .NET Framework 선행 조건 설치가 다시 시작해야한다는 것을 나타내는 종료 코드를 반환 할 때 발생할 수 있습니다. 그런 다음 'NeedRestart' 함수를 수동으로'True '로 설정합니다. 나는 이것이'AlwaysRestart = yes'를 설정하는 것과 같은 행동을 일으킬 것이라고 생각합니까? –
그게 전부입니다. 필자가 제안한 것처럼'regserver' 플래그를 사용하는 대신''RegisterServer'' 함수 (http://www.jrsoftware.org/ishelp/index.php?topic=isxfunc_registerserver)를'Code'에서 사용하십시오. 괜찮아. –
답변에 대한 몇 가지 세부 정보를 추가했습니다. –