Faced a problem today where I was not able to refer a third party dll (MessageGearsSDK.dll) into my project.
Problem was simple- My project dll is signed but MessageGearsSDK.dll is unsigned (Shame on them to release a non-signed dll for redistribution).
Binged a lot and then slapped myself when I found that the solution was also so simple (shame on me for not able to think it by myself) -
Use Ildasm to create .il file and then recreate the dll by signing it with my own key :-)
ildasm /all /out=MessageGearsSDK.il MessageGearsSDK.dll
ilasm /dll /key=xxxx.snk MessageGearsSDK.il
For more information and some exceptions (like, you cannot do this for a assembly which uses a un-managed code or uses delay signing), please refer following link-
http://buffered.io/posts/net-fu-signing-an-unsigned-assembly-without-delay-signing/
