我在窗口(创建拉链工具,如一个SFX(自解压可执行文件)的文件7z
,WinRar
......)并具有以下细节:
我想CopyRight
在C#中获取文本,所以我编写了以下代码:
var fileVersionInfo = FileVersionInfo.GetVersionInfo(filePath); Console.Write(fileVersionInfo.LegalCopyright)
fileVersionInfo.LegalCopyright
永远是空的!有什么问题?
编辑:
我的原始代码:
var fileVersionInfo = FileVersionInfo.GetVersionInfo(filePath1); var properties = typeof(FileVersionInfo).GetProperties(BindingFlags.Public | BindingFlags.Instance); foreach (var propertyInfo in properties) { var value = propertyInfo.GetValue(fileVersionInfo); Console.WriteLine("{0} = {1}", propertyInfo.Name, value); } Console.ReadKey();
结果:
(我的声誉太低,无法发表评论,所以我在这里发布)
我刚刚测试了以下代码,它对我来说很正常.
var fileVersionInfo = FileVersionInfo.GetVersionInfo(@"C:\Users\usr\Desktop\Game\steamIntegration\steam_api.dll"); Console.Write(fileVersionInfo.LegalCopyright); Console.ReadLine();
也许你的权限不足以支持该文件.在项目中添加*.manifest,将requestedExecutionLevel更改为:
也许这解决了你的问题.