First let check if your PC has Windows installer service. If having, the reason is your build project on MS Visual Studio has Custom Action with the InstallerClass property set to true, but either no installer classes could be found in the setup.exe or the setup.exe could not be loaded due to missing dependencies.
There are 2 ways to solve this problem:
1. If you have MS Visual Studio projects. Rebuild your projects: make sure you have installer class in main project and select it on Custom Action (right click on the installer project, selecting View and then Custom Actions). Then correct reference Dlls.
2. If you don't have the installer project. Check missing Dlls by using fuslogvw.exe. Below is the guide for quick how to use fuslogvw.exe.
Find fuslogvw.exe tool:
-MS VS 2008: C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\fuslogvw.exe
-MS VS 2010: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\FUSLOGVW.exe, and C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\1033\flogvwrc.dll
Copy this tool to a folder on the target computer.
Create logging folder, e.g. c:\fuslog
Start FUSLOGVW.exe. Update the following settings:
Log all binds to disk
Enable Custom log path
Custom lag path = c:\fuslog\
Finally, enable assembly binding logging in the registry by setting the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion to 1.
Click Refresh button in FUSLOGVW.exe and behold! A list of assembly binding events will be displayed here:
The individual events contain useful details:
Hope you can solve this error.