【发布时间】:2013-10-27 07:16:34
【问题描述】:
我使用以下代码为存储在硬盘上的文件获取 C# 程序集文件版本。
var vInfo = FileVersionInfo.GetVersionInfo("assemblyPath").FileVersion;
如何在不解压缩的情况下获取存储在存档中的文件的程序集文件版本?想象一下,您没有写入硬盘的权限。您可能会使用一些内存库来打开存档并检查您需要知道的内容。
【问题讨论】:
-
SharpZipLib 可以解压到
MemoryStream,但GetVersionInfo()似乎只接受一个文件名... -
如果您读取流,则不需要将其写入文件系统。使用反射来加载它
-
我正在使用 DotNetZip,它也可以解压缩到
MemoryStream,我发现 GetVersionInfo 只接受本地路径,这就是我问的原因。 @giammin 你能告诉我,如何对流使用反射吗? -
@OndrejJanacek 抱歉,您只能获得版本而不是文件版本
-
@giammin 至少有点……
标签: c# .net-assembly archive