问题
I cannot install my project because the setup.exe gives an
ERROR 1001. Unable to get installer types in the C:\Program Files\MyProgram\SI.ArchiveService.ArchiveService.exe assembly
Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
So I viewed the fusion logs and there were 3 errors (I have posted the most relevant at the bottom). The one below is translated back to english, so the wording might be slightly off. But from what I can see, there is missing an assembly:
LOG: Post Politics Reference: SI.ArchiveService.CommonLogic.Exceptions, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 925c8734ae397609
Does this means it looks in GAC and couldn't find it? I have the project as part of the solution, but I don't know why it suddenly fails. The primary output is added to the folder "Global Assembly Cache Folder" in the install project. It has worked before. What has happened? Any idea of how to fix this?
* Assemblybinderpost in log (24-03-2011 @ 15:43:42) *
Operation failed. Pair Score: hr = 0x80070002. The specified file was not found.
Assemblystyring loaded from: C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ mscorwks.dll Running under executable C: \ Windows \ syswow64 \ Msiexec.exe --- There follows a detailed error log.
=== Condition Information on prior binding ===
LOG: User = NT AUTHORITY \ SYSTEM
LOG: DisplayName = SI.ArchiveService.CommonLogic.Exceptions, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 925c8734ae397609
(Fully-Specified)LOG: Appbase = file: / / / C: / Windows/syswow64 /
LOGIN: First PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = NULL Calling assembly: SI.ArchiveService.ArchiveService, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 925c8734ae397609.
===
LOG: This binding initiates in reading context load from.
WRN: Original image is not tested in the context load from. Original image is tested only in the standard reading context as with Assembly.Load ().
LOG: Could not find a program configuration file. LOG: User host configuration file: C: \ Users \ KASPER ~ 1.HAN \ AppData \ Local \ Temp \ CFGBE23.tmp
LOG: User machine configuration file from C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ config \ machine.config.
LOG: Post Politics Reference: SI.ArchiveService.CommonLogic.Exceptions, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 925c8734ae397609
LOG: The same binding was seen before and failed with hr = 0x80070002.
ERR: There was an unrecoverable error under control before downloading (hr = 0x80070002).
回答1:
If it seems like an assembly is not being deployed try checking the solution properties.
Right click the solution in solution explorer, go to properties, go to 'Configuration' under 'Configuration Properties' and make sure all the projects are checked as Build.
Also change the configuration drop down from Debug to Release and make sure they are all still checked.
来源:https://stackoverflow.com/questions/5430602/my-installation-failed-missing-dll-what-do-i-do-to-correct-this