NET DLL可以改文件名不能使用的字符使用吗

结帖率 提供的命令行 来设置的,

问: 如何将 cs文件 加入强名称,或者是 将dll(那些cs文件编译好的)加入强名称,到全局缓存

之后编译。(最好是通过project属性设置)


我试过,可惜没有成功过

不懂楼主问的啥意思,没关注过这方面的知识,等高人回帖。学习ing.

俺再说一遍:  就是将 c#编写的DLL文件 ,通过命令后的方式注册为强命名的DLL,那样的DLL可以加入全局缓存,

俺要做一个shell扩展。

匿名用户不能发表回复!

  如果在你的项目中使用了强命名,而这个项目引用的程序集dll,又不是强命名程序集,那这个项目在编译的时会出现类似:程序集生成失败 -- 引用的程序集“XXXXXXXXX”没有强名称 的错误。如果你找不到源代码,或者不想重新编译程序,那可以使用如下的方法:

\Framework\或者其他的文本编辑器,就算是记事本也可以。这两个文件虽然不在同一个文件里面,但是他们是属于同一个namespace(名称空间)这对以后我们使用这两个方法提供了方便。当然他们也可以属于不同的名称空间,这是完全可以的,但只是在我们应用他们的时候就需要引用两个不同的名称空间,所以作者建议还是写在一个名称空间下面比较好。 MyMaxCD.cs,完成后可在本目录下面找到我们刚才生成的MyDLL.DLL文件/target:library 编译器选项通知编译器输出 DLL 文件而不是 EXE 文件。后跟文件名的 /out 编译器选项用于指定 DLL 文件名。如果/out后面不跟文件名编译器使用第一个文件 (MySwap.cs) 作为 DLL 文件名。生成的文件为MySwap.DLL文件。 OK!我们创建动态链接库文件的任务完成了,现在是我们享受劳动成果的时候了,下面我将介绍如何使用我们所创建的动态链接库文件。 四、使用DLL 我们简单写一个小程序来测试一下我们刚才写的两个方法是否正确,好吧,跟我来:MyClient.csview plaincopy to clipboardprint?//该语句不要加入到程序中using System; using MyMethods; 2、节省磁盘空间。许多应用程序可在磁盘上共享 DLL 的一个副本。相反,每个用静态链接库生成的应用程序均具有作为单独的副本链接到其可执行图像中的库代码。 3、升级到 DLL 更为容易。DLL 中的函数更改时,只要函数的参数和返回值没有更改,就不需重新编译或重新链接使用它们的应用程序。相反,静态链接的对象代码要求在函数更改时重新链接应用程序。 4、提供售后支持。例如,可修改显示器驱动程序 DLL 以支持当初交付应用程序时不可用的显示器。 5、支持多语言程序。只要程序遵循函数的调用约定,用不同编程语言编写的程序就可以调用相同的 DLL 函数。程序与 DLL 函数在下列方面必须是兼容的:函数期望其参数被推送到堆栈上的顺序,是函数还是应用程序负责清理堆栈,以及寄存器中是否传递了任何参数。 6、提供了扩展 MFC 库类的机制。可以从现有 MFC 类派生类,并将它们放到 MFC 扩展 DLL 中供 MFC 应用程序使用。 7、使国际版本的创建轻松完成。通过将资源放到 DLL 中,创建应用程序的国际版本变得容易得多。可将用于应用程序的每个语言版本的字符串放到单独的 DLL 资源文件中,并使不同的语言版本加载合适的资源。 使用DLL 的一个潜在缺点是应用程序不是独立的;它取决于是否存在单独的 DLL 模块。以上为转载

我要回帖

更多关于 文件名不能使用的字符 的文章

 

随机推荐