Possibilities to manage reference properties of GAC assemblies RRS feed

  • Question

  • Hi,

    we are building Windows Embedded CE 6.0 devices and want for our customers a simple way to use them with our SDK. For that we have - beside a C API - also a .NET API with a managed DLL that is integrated into the GAC of the device image. In our SDK this DLL is referenced through a registry value in the HKLM\SOFTWARE\Microsoft\.NETCompactFramework\<version>\WindowsCE\AssemblyFoldersEx\<company> key, but when the reference is added to a new smart device project, the "Copy Local" and "Specific Version" properties are always set to "True". In our case this is'nt good since:

    • We want to have an accurate version string in our DLL, so the support team has the ability to determine the installed version. With "Specific Version"=True the compiled binaries of customer applications would stop working after updating the DLL. Changing the FileVersion is not possible since it is not supported with .NET Compact Framework.
    • We want that the central - in the GAC - installed DLL is used for all customer applications since this managed DLL is depending on the lower C API DLLs, so "Copy Local"=True and a - with that - possible re-deployment with the applications of our customers is inconvenient.

    Now my question is if there is a possibility to manage the behaviour of Visual Studio to automatically set "Copy Local" and "Specific Version" to "False" (as with framework DLLs) if the assembly is added to a project. In the first version we need to ship with a documentation for the customer to change this manually, but I already can hear the phones of the support ringing with our next release since nobody readys documentation ;-) (and I can probably make a RTFM mail template for the support...).

    Thanks in advance!

    Monday, July 11, 2011 10:15 AM