1

well I am having a problem renaming the ICSharpCode.SharpZipLib.dll file to anythig else. I am trying to shorten the file name. I reference the assembly in the project, but when the program reaches the statements where I use the library. It spawns an error that it could not find the assembly or file 'ICSharpCode.SharpZipLib'. When I change the file name back to ICSharpCode.SharpZipLib.dll the application works noramally. So, is there any way to change the file name. Also, am I allowed to change it without violating the license (I am going to use it in a commercial application). Thanks.

4

3 回答 3

6

您可以尝试反汇编库,然后使用新名称重新组装。

例如

1) 打开 Visual Studio 命令提示符。

ildasm /all /out=ICSharpCode.SharpZipLib.il ICSharpCode.SharpZipLib.dll
ilasm /dll /out=shortname.dll ICSharpCode.SharpZipLib.il

2)在项目中添加shortname.dll

于 2014-02-13T12:10:35.503 回答
4

因为您重命名了 DLL,.Net 运行时不知道如何自动找到它。

您可以调用Assembly.Load手动加载重命名的文件。
请注意,您需要在调用任何使用程序集的方法之前执行此操作,因为 JITter 需要在方法开始执行之前加载方法(直接)使用的所有类型。

于 2011-01-13T18:48:39.113 回答
-2

DLL 已编译,因此重命名文件不会更改其中的namespace'。您可以通过using指令为其分配别名。

using zip = ICSharpCode.SharpZipLib;
于 2011-01-13T18:49:51.870 回答