assembly signing - strong name internalsvisibleto 32bit .net 4.0 -


i given 3 dlls (api external system) , can use executable on windows 7 32bit .net 4.

then need sign executable strong name.

it mandates api dlls signed same strong name, if understand correct.

and i've seen posts how (ildasm/ilasm, or brutal developer, or crypto obfuscator) , tried put hands on. yet still getting "strong name signed assemblies must specify public key in internalsvisibleto declaration".

anyone been there , managed out safely?

regards, oren

ps 1, did manage make work on windows 7 64bit (there 3 api's dlls signed crypto obfuscator done previous developer). started investigate when did not work in 32bit , have realized using signed dlls. i've located original dlls, able run without "strong name" in neither assemblies nor api. other combination, when assemblies not signed (or signed best of knowledge), did not work.

ps 2, have dll of mine, works nicely executable (i sign both, have total of 5 assemblies, 2 mine , 3 given), i'm not sure related, brought here anyhow.

it seems problem need application signed, while using unsigned 3rd party library. tried solve problem signing 3rd party library, introduced new errors.

given assumption, problem quite clear - individual dlls of 3rd party library using internals of each other (at least 1 of them @ least 1 of others), why it's using internalsvisibleto. error you're getting because you've signed assemblies in hacky way, , didn't make sure references assemblies have among updated - internalsvisibleto referencing invalid dll, means .net prohibit target dll using internals of other library.

to fix this, need change internalsvisibleto declarations in 3rd party libraries. easy in il - find attribute declaration, , change assembly name include public key (e.g. internalsvisibleto("mylibrary") internalsvisibleto("mylibrary, publickey=4564651357987621321...")).

however, have note considered reverse engineering, , might prohibited license of 3rd party. make sure you're doing legal, , if not, communicate directly 3rd party provider find proper solution.


Comments

Popular posts from this blog

css - SVG using textPath a symbol not rendering in Firefox -

Java 8 + Maven Javadoc plugin: Error fetching URL -

node.js - How to abort query on demand using Neo4j drivers -