InstallUtil.exe를 사용하여 서비스를 설치하려고하지만를 통해 호출되었습니다 Process.Start
. 코드는 다음과 같습니다.
ProcessStartInfo startInfo = new ProcessStartInfo (m_strInstallUtil, strExePath);
System.Diagnostics.Process.Start (startInfo);
여기서 m_strInstallUtil
"InstallUtil.exe"의 정규화 된 경로 및 exe strExePath
는 내 서비스의 정규화 된 경로 / 이름입니다.
관리자 권한 명령 프롬프트에서 명령 줄 구문을 실행하면 작동합니다. 위의 코드를 사용하여 내 앱에서 실행하지 않습니다. 프로세스 상승 문제를 처리한다고 가정하면 프로세스를 어떻게 상승 상태에서 실행합니까? 이것을 봐야 ShellExecute
합니까?
이것은 모두 Windows Vista에 있습니다. VS2008 디버거에서 관리자 권한으로 프로세스를 실행 중입니다.
또한 설정을 시도 startInfo.Verb = "runas";
했지만 문제가 해결되지 않은 것 같습니다.
startInfo.UseShellExecute = true;
추가에startInfo.Verb = "runas";
나를 위해 벌금을했다.