ServiceInstaller.Uninstall(IDictionary) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
레지스트리에서 해당 서비스에 대한 정보를 제거하여 서비스를 제거합니다.
public:
override void Uninstall(System::Collections::IDictionary ^ savedState);
public override void Uninstall(System.Collections.IDictionary savedState);
override this.Uninstall : System.Collections.IDictionary -> unit
Public Overrides Sub Uninstall (savedState As IDictionary)
매개 변수
- savedState
- IDictionary
IDictionary 설치와 관련된 컨텍스트 정보가 들어 있는 항목입니다.
예외
설명
서비스를 제거하기 전에 먼저 서비스를 중지하려고 시도합니다. 서비스를 중지할 수 없는 경우 예외가 catch되지 않으며 메서드는 서비스 제거를 계속합니다.
일반적으로 코드 내에서 메서드 ServiceInstaller 를 호출하지 않습니다. 일반적으로 설치 유틸리티에서만 호출됩니다. InstallUtil은 서비스를 제거하고 설치하는 데 사용됩니다. 제거는 명령줄 호출에서 스위치를 사용합니다.
애플리케이션의 제거 루틴은 프로젝트 설치 관리자 Installer.Context를 사용하여 제거되는 구성 요소에 대한 정보를 자동으로 유지 관리합니다. 매개 변수로 UninstallsavedState 전달되는 이 상태 정보는 인스턴스로 ServiceProcessInstaller 지속적으로 업데이트되고 각 ServiceInstaller 인스턴스는 유틸리티에 의해 설치됩니다. 코드에서 이 상태 정보를 명시적으로 수정하는 것은 일반적으로 필요하지 않습니다.
클래스에서 파생되는 모든 클래스의 Installer 경우 컬렉션의 Installers 상태는 및 Install 메서드에서 Uninstall 동일해야 합니다. 그러나 사용자 지정 설치 관리자 클래스 생성자의 컬렉션 Install 에 설치 관리자 인스턴스를 추가하는 경우 전체 및 Uninstall 메서드에서 컬렉션의 Installers 유지 관리를 방지할 수 있습니다.
제거를 위한 롤백 메커니즘이 없으므로 한 서비스를 제거하지 못하면 제거되는 다른 서비스(일반적으로 동일한 설치 프로젝트 내)에 영향을 주지 않습니다.