I have several libraries that I use in my unsigned project. Since my application is strictly signed, libraries should also be.
I sign these libraries using:
"%PROGRAMFILES%\Microsoft SDKs\Windows\v7.1\Bin\ildasm.exe" /nobar /all /out=library.il library.dll "%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\ilasm.exe" /dll /key=MyKey.snk library.il
The problem is that any metadata, such as version numbers, is lost in an already signed DLL. This is a problem because now some dependencies between the libraries are broken. How to save version numbers without resorting to actually compiling the source code of these libraries?
UPDATE
This is actually a specific DLL that shows this problem, and I found out that it is built using ILMerge. Perhaps this is causing the problem. To be clear: the DLL created by ILMerge has the correct metadata, only after disassembling and reassembling the metadata disappears.
UPDATE 2
I opened the DLL in Reflector, and it turned out that at least the version number still exists. I constantly checked the properties / file properties tab of the file in Windows Explorer. Therefore, I believe that this is a manifesto that is missing.
Sandor drivenelenhuizen
source share