从 ISLE 项目中提取产品版本 - VB.NET
Extracting product version from an ISLE project - VB.NET
我有一个 Excel 我创建的插件项目和一个独立的安装文件。该插件有其 Install Shield Limited Edition - 安装项目。
当我对代码进行更改时,我创建了一个具有新版本号的新安装文件。
我想从安装项目中提取 "Product Version" 作为字符串。这里的图像显示了我想要提取的内容。 "Product Version" 位于安装项目的 "General Information" 中。
我尝试使用 Application.ProductVersion
,但我认为这给了我 Excel 的版本,而不是我的插件版本。
如何获取插件的产品版本?我的目的是提取此版本号并将其显示在插件功能区中,以便我们可以看到我们正在使用哪个版本(要求之一)。
版本已写入加载项清单文件。要获得它,您应该加载它(清单)然后提取它...
Dim publishVersion As String = String.Empty
Dim assemblyVersion As String = String.Empty
' load the application manifest
Using xmlrdr As XmlReader = XmlReader.Create("ExcelPTCMAddIn.dll.manifest")
xmlrdr.MoveToContent
Do While xmlrdr.Read
If (xmlrdr.Name = "asmv1:assemblyIdentity") Then
publishVersion = xmlrdr.Item("version")
End If
If ((xmlrdr.Name = "assemblyIdentity") AndAlso (xmlrdr.Item("name") = "ExcelPTCMAddIn")) Then ' there're two occurences of "assemblyIdentity" element, either one is OK
assemblyVersion = xmlrdr.Item("version")
End If
Loop
End Using
让我知道这是怎么回事。
我有一个 Excel 我创建的插件项目和一个独立的安装文件。该插件有其 Install Shield Limited Edition - 安装项目。 当我对代码进行更改时,我创建了一个具有新版本号的新安装文件。
我想从安装项目中提取 "Product Version" 作为字符串。这里的图像显示了我想要提取的内容。 "Product Version" 位于安装项目的 "General Information" 中。
我尝试使用 Application.ProductVersion
,但我认为这给了我 Excel 的版本,而不是我的插件版本。
如何获取插件的产品版本?我的目的是提取此版本号并将其显示在插件功能区中,以便我们可以看到我们正在使用哪个版本(要求之一)。
版本已写入加载项清单文件。要获得它,您应该加载它(清单)然后提取它...
Dim publishVersion As String = String.Empty
Dim assemblyVersion As String = String.Empty
' load the application manifest
Using xmlrdr As XmlReader = XmlReader.Create("ExcelPTCMAddIn.dll.manifest")
xmlrdr.MoveToContent
Do While xmlrdr.Read
If (xmlrdr.Name = "asmv1:assemblyIdentity") Then
publishVersion = xmlrdr.Item("version")
End If
If ((xmlrdr.Name = "assemblyIdentity") AndAlso (xmlrdr.Item("name") = "ExcelPTCMAddIn")) Then ' there're two occurences of "assemblyIdentity" element, either one is OK
assemblyVersion = xmlrdr.Item("version")
End If
Loop
End Using
让我知道这是怎么回事。