2013-01-18 3 views
2

제 설치 프로그램에 NT 서비스를 설치하는 구성 요소가 있습니다. 부 업그레이드 도중 서비스가 중지되지 않는 문제가 있습니다. 나는 로그가 installshield에 의해 업그레이 드하는 동안 생성 된 것을 관찰하고 StopServices 작업과 그 리턴 코드가 1이라고보고합니다. 서비스 시작/중지 이벤트를 기록하기 위해 process hacker을 시작했지만 업그레이드 중에는 서비스가 중지되지 않습니다. 또한 제거하는 동안 서비스가 중지되었다가 제거 된 것을 확인했습니다. 왜 이런 일이 일어나는 지 아십니까?마이너 업그레이드 중에 Installshield가 서비스를 중지하지 않습니다

저는 installshield 2008을 사용하고 있지만, 설치 실외 관련 답변이 도움이 될 것입니다.

답변

0

결국이 문제를 극복하지 못했습니다. 며칠 동안 정확하게 무슨 일이 일어나고 있는지 파악하려고 애썼지 만 사소한 업그레이드 중에 서비스가 중지되거나 시작되지 않은 이유를 알아낼 수 없었습니다. 이 작업을 수행하는 사용자 지정 작업을 작성하고 sc.exe을 사용했습니다. 이것은 사용자 지정 작업으로 수정해야하는 installshield에서 해결할 수없는 첫 번째 문제는 아닙니다. 이 답변이 며칠을 누군가에게 저장하기를 바랍니다.

+2

: 만에 그 조건을 설정 마이너 업그레이드하는 동안 사용자 지정 작업을 실행하려면

#include "ifx.h" //Function to stop the service export prototype stopService(HWND); function stopService(hMSI) begin ServiceStopService ("my service name"); end; //Function to start the service export prototype startService(HWND); function startService(hMSI) begin ServiceStartService ("my service name" ,""); end; 

당신이 해결했다고 말하는 것만으로는 도움이되지 않습니다. 사용자 지정 동작을 작성한 방법, 시퀀스를 호출 할 단계/시퀀스 번호 등 세부 정보를 추가 할 수 있다면 유용한 참조가 될 것입니다. 대답을 더 자세히 설명 할 수 있다면 좋을 것입니다. – Munawar

+0

내 대답보기 [여기] (http://stackoverflow.com/a/43832700/6612140) – posix99

0

설치 스크립트와이를 실행하는 사용자 지정 작업으로 수행 할 수 있습니다.

/정지 서비스를 시작하는 예는 (내가 IS2016에 사용)

:

REINSTALLMODE=vomus 
관련 문제