2011-05-16 86 views
4

我的理解(很可能是错误的)是,通过在Visual Studio版本中包含VERSIONINFO资源文件,可以很容易地为C++ DLL或EXE设置OriginalFilename属性。是否可以使用Visual Studio为.Net程序集设置OriginalFilename属性?

但我找不到任何设置C#构建的OriginalFilename的任何方式。显然,它始终设置为正在构建的输出文件的名称。

我真的希望能够指出这一点,如果可能的话。有任何想法吗?谢谢。

回答

2

好吧,没有答案,现在我找到了解决方法。

在这里StackOverflow的这篇文章是非常有帮助的: How do I set the version information for an existing .exe, .dll?

害得我用C#编写这个资源处理项目: http://resourcelib.codeplex.com/

那么我现在要做的就是修改的DLL在他们被修造之后。

编辑(2015年3月):这是一个旧的发布,但我可以看到它仍然有一些兴趣。 “ResourceLib C#文件资源管理库”开源项目已经从四年前开始移动,现在是:https://github.com/dblock/resourcelib

+0

您是否能够使用resourceLib修改FileInformations? – 2015-03-04 10:48:56

+0

@JMat:是的,这仍然适用于我。尽管我应该提到我仍然在瞄准.Net Framework 3.5。也许,如果/当我更新到更高版本时,.dll文件将会有很大的不同,以至于无法正常工作 - 我不知道。 – RenniePet 2015-03-04 12:24:30

0

不幸的是,没有。

您可以阅读它与System.Diagnostics.FileVersionInfo.OriginalFilename的内容,但该值由Project/Output Filename填充,而不是来自任何“组件属性”。

运行您的修补程序以在生成后更改它可能会破坏构建过程中应用的任何数字签名。您可能需要在没有签名的情况下构建,修补这些属性,然后在单独的步骤中对其进行签名。

+1

“您可能需要在不签名的情况下构建,修补属性,然后在单独的步骤中对其进行签名。”是的,我在后面的步骤中应用公司的代码签名证书。 – RenniePet 2015-02-02 03:43:19

1

是的,它可以设置它, - >的项目或程序集名称在Visual Studio中单击鼠标右键 - >选择属性 - >选择应用程序选项卡 - >更改程序集名称,只要你想

Please refer the link to view property window, in which assembly name option is there

更改名称编译项目,(确认更改)右键单击您编译的DLL文件,并选择属性,然后单击“详细”选项卡,在其中您可以看到“后原始文件名'现在已更改。

相关问题