.NET Assembly Uninstaller File
3.0 | 1 Vote
What is an INSTALLSTATE file?
An INSTALLSTATE file is a file created during the installation of a .NET Framework service or application. It contains data used to uninstall an assembly included within the software. INSTALLSTATE files are created by the installutil.exe program.
By default, .NET Framework software uses installutil.exe to install assemblies included within the software. When installutil.exe is run against an assembly, it typically creates the following three files:
- installutil.installlog, which contains a description of the install process
- YourAssemblyName.installlog, which contains information specific to the install process's commit phase
- YourAssemblyName.installstate, which contains data used to uninstall the assembly
The INSTALLSTATE file contains version information as well as any custom information entered during the installation process. For example, if your install dialog asks users to specify a SQL server address and credentials to be used with your software, the address and credentials may be stored in an INSTALLSTATE file so they can be retrieved during de-installation.
Developers who create custom install actions for their .NET Framework software often report the existence of unnecessary INSTALLSTATE files after installation or de-installation. In reality, these developers have not accounted for installutil.exe's default creation of INSTALLSTATE files. If uninstalling your application leaves behind stray INSTALLSTATE files, you may have to update your assemblies' custom installer class to call the base.Uninstall() method, which should remove INSTALLSTATE files during de-installation.
NOTE: If you've overridden your assembly's default Uninstall method, you must call your custom Uninstall method (e.g. base.YourUninstallMethodNameHere()) instead of the default Uninstall method.
How to open an INSTALLSTATE file
INSTALLSTATE files are not typically meant to be opened. However, because INSTALLSTATE files are XML files, you can open them in any text or source code editor, such as Microsoft Visual Studio Code (cross-platform) or Microsoft Visual Studio (Windows).