none
Assign strong name to third party dependent assemblies RRS feed

  • Question

  • I have a third part product that has 2(TWO) dlls. One dll depends on the other. As a reference I use only the first one.

    Because we had some problems we decided to sign all our dlls. But because of this third party product we can't.

    Is there a way to make this third party product strong name so we can sign our dlls.

    I have tried signing the referenced dll. At compile everthing works. But at runtime when I use the code from the referenced dll. I get an error that the depended dll is not strong name.
    Wednesday, October 14, 2009 8:57 AM

All replies

  • Third parties shipping unsigned assemblies is criminal.  You have good cause to complain loudly and demand a signed version of their DLL.  Especially since it is so easy to do for them.  The only other option is disassembling the DLL with ildasm.exe and putting it back together with ilasm.exe, using the /key option.  This is usually explicitly forbidden in any license agreement.

    Hans Passant.
    • Marked as answer by eryang Tuesday, October 20, 2009 2:57 AM
    • Unmarked as answer by ARHANGEL19 Tuesday, October 20, 2009 5:08 AM
    • Proposed as answer by Rajesh Kanakarajan Tuesday, April 26, 2011 11:38 AM
    Wednesday, October 14, 2009 12:02 PM
    Moderator
  • Could you explain how to do it with ilasm.exe because I have tried and it did't work.

    The problem is that the dll that depends on the other one still want the dll not signed.

    Tuesday, October 20, 2009 5:10 AM
  • Please check below link for complete reference.

    MSIL Assembler (Ilasm.exe) 

     

    The MSIL Assembler generates a portable executable (PE) file from Microsoft intermediate language (MSIL). (For more information on MSIL, see Compiling to MSIL). You can run the resulting executable, which contains MSIL and the required metadata, to determine whether the MSIL performs as expected.:

    http://msdn.microsoft.com/en-us/library/496e4ekx(VS.80).aspx

    Regards,
    Jai

    Tuesday, October 20, 2009 4:08 PM
  • Hi ARHANGEL19,
    Did Jai's suggestion help you? it will be appreciated if you make the useful replies as answers.

    Thanks,
    Eric
    Please remember to mark helpful replies as answers and unmark them if they provide no help.
    Thursday, October 22, 2009 2:20 AM
  • I already have read the MSIL Assembler documentation before the Jai's suggestion.
    Thursday, October 22, 2009 5:26 AM
  • Hi,
    Just as nobugz said, the best way is asking for a signed version from the dll owner, we are not recommended to generate new dll by using ildasm and ilasm.

    Thanks,
    Eric
    Please remember to mark helpful replies as answers and unmark them if they provide no help.
    Friday, October 23, 2009 8:10 AM
  • You can use ILMerge for assigning Strong name to third party Dll

    or u can merge third party Dll in a single dll then you can make that single dll as signed dll e.g

    C:\Program Files\Microsoft\ILMerge>ilmerge /out:myGeneratedSinlgeDll.dll /keyfile:Myk ey.snk Primary.dll thirdPartyUnsigned.dll




    Friday, April 27, 2012 8:11 AM