如何从.XLL获取程序集版本(当DLL转换为XLL时)

时间:2013-01-24 00:10:30

标签: vba excel-dna

我使用ExcelDna将dll(一个VB.NET项目)转换为xll。xll是否带有汇编版本?如果没有..如何版本.xll文件?一旦我这样做,我必须以编程方式在VBA代码中获得程序集版本。我们将非常感谢帮助!

1 个答案:

答案 0 :(得分:2)

如果您只想获得.dll的版本信息,那么您的代码可以执行类似

的操作
Dim myAssemblyName As AssemblyName = _
    new AssemblyName(Assembly.GetExecutingAssembly().FullName)
Dim myVersion As Version = myAssemblyName.Version

要从VBA访问此内容,您可以在加载项中使用Application.Run从VBA调用隐藏的UDF。

.xll拥有自己的版本信息,不会自动从您嵌入的.dll更新。您可以使用'verpatch' Version Resource Tool更新.xll的版本信息,discussed on the Excel-DNA Google Group也是如此。

如果你想阅读VBA中'verpatch'更新的.xll版本,你可以从VBA调用WIN32版本API,这在KB article 139491中有讨论。