views:

11

answers:

0

While publishing files from command line msbuild /target:publish I have following issue - the generated manifest file set's for used dll dependencyType='prerequisite'. I would like force msbuild to use dependancyType='install'.

 <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
  <assemblyIdentity name="mydllname" version="1.0.0.0" language="neutral" processorArchitecture="msil" />
</dependentAssembly>

This is connected with click once deployment. The file is a strongly named and signed assembly. I tried to take off this strongly name, but then i cannot publish it with msbuild.exe commandline - an msbuild error appears that says that assembly must be strongly-named to be a prerequisite. So I added strong-name for assembly, and now publish goes well. Nevertheless now I cannot update application through click-once: I'm getting error: The application requires that assembly be installed in Global Assembly Cache. When I publish my project from Visual Studio, I dont get any error. Thats because, in Visual Studio I can set that dependent dll dependencyType is install (Project properties->Publish -> Application Files). Nevertheless I have to publish my project through command line, because it is an element of nightly build and continues integration system.

Do you have any ideas how can i solve this problem? I have spent many hours to solve this, and I stucked. I would really appreciate any help.