有三个程序集版本属性.有什么区别?如果我使用AssemblyVersion并忽略其余部分可以吗?
MSDN说:
指定要归属的程序集的版本.
指示编译器使用Win32文件版本资源的特定版本号.Win32文件版本不需要与程序集的版本号相同.
定义程序集清单的其他版本信息.
这是使用装配属性的最佳做法的后续行动?
AssemblyInformationalVersion在运行时获取程序集属性值的C#语法是什么?例:
[assembly: AssemblyInformationalVersion("1.2.3.4")]
我有一个C#解决方案,它引用了我从不同的C#解决方案创建的DLL.
使用Application.ProductVersion确定我的解决方案的产品版本非常容易.但是,我真正需要的是一种在我的程序中单独确定exe文件版本和dll的方法.我想在我的关于对话框中显示dll和exe的文件版本.这样做的代码会是什么样的?
我有一个应用程序需要检查各种系统 EXE 和 DLL 的版本,以确定它们是否易受攻击。这是一个本机 C++ 应用程序,它在其清单中不提供任何特定的 WinSxS 链接。在 Windows 7 上,当我在绝对路径(例如“c:\windows\system32\taskeng.exe”)上调用 GetFileVersionInfo 时,我会收到“C:\Windows\winsxs\x86_microsoft-windows-taskscheduler-engine_31bf3856ad364e35_6”的版本信息。 1.7600.16385_none_e582a352202e02c8\taskeng.exe"
因此,澄清一下,Windows 资源管理器报告的版本 c:\windows\system32\taskeng.exe 是 6.1.7600.16699。GetFileVersionInfo() 报告的 c:\windows\system32\taskeng.exe 版本为 6.1.7600.16385。
如何强制我的应用程序不通过 WinSxS 重定向其文件?