Office 插件版本不正确
Incorrect version of office plugin
我开发了一个 office 插件,在 AssemblyInfo.cs
我指定了
[assembly: AssemblyVersion("1.0.3.17")]
[assembly: AssemblyFileVersion("1.0.3.17")]
但是,在我安装我的插件后,add/remove 程序下的版本是 1.0.0.0
所以我检查了在构建过程中创建的 VSTO 文件(我用 VS2013 做的)并看到在 assemblyIdentity
标签内,版本号是 1.0.0.0
(而不是1.0.3.17
)..
为了安装插件,我使用 VSTOInstaller.exe
并将我的 VSTO 文件传递给它..
那么如何更改 VSTO 文件中的版本?或者在更一般的意义上 - 我应该在哪里指定将在 Add/Remove 部分中显示的版本?
谢谢,
诺姆
要更改 VSTOIntaller.exe
使用的版本号,您必须在项目属性页面中更改 Publish Version
。
要在 Project
上到达 Right Click
,请转到 Properties
和 select 左侧的 Publish
选项卡,在那里您会找到Public Version
.
您不必发布项目,构建过程会获取该信息并将其写入生成的 .vsto
文件。
在.vsto
中你可以找到XmlElement
AssemblyIdentity
作为例子:
<assemblyIdentity name="xxxx.vsto" version="1.2.3.4"
您还可以在项目文件中找到该信息(*.csproj
for C#),在那里您会找到一个 XmlElement
ApplicationVersion
作为示例:
<ApplicationVersion>1.2.3.4</ApplicationVersion>
要按照 OP 的要求通过代码更改此信息,我建议提出一个新问题,因为他打算在构建过程中修改它,而我只能想办法在构建之前或之后进行修改.
例如,要在实际插件之外的构建之前更改它,您可以使用以下内容:
var file = @"xxxx.csproj";
var xDoc = XDocument.Load(file);
var ns = xDoc.Root.Name.Namespace;
xDoc.Element(ns + "Project")
.Element(ns + "PropertyGroup")
.Element(ns + "ApplicationVersion").Value = "1.2.3.5";
xDoc.Save(file);
我开发了一个 office 插件,在 AssemblyInfo.cs
我指定了
[assembly: AssemblyVersion("1.0.3.17")]
[assembly: AssemblyFileVersion("1.0.3.17")]
但是,在我安装我的插件后,add/remove 程序下的版本是 1.0.0.0
所以我检查了在构建过程中创建的 VSTO 文件(我用 VS2013 做的)并看到在 assemblyIdentity
标签内,版本号是 1.0.0.0
(而不是1.0.3.17
)..
为了安装插件,我使用 VSTOInstaller.exe
并将我的 VSTO 文件传递给它..
那么如何更改 VSTO 文件中的版本?或者在更一般的意义上 - 我应该在哪里指定将在 Add/Remove 部分中显示的版本?
谢谢, 诺姆
要更改 VSTOIntaller.exe
使用的版本号,您必须在项目属性页面中更改 Publish Version
。
要在 Project
上到达 Right Click
,请转到 Properties
和 select 左侧的 Publish
选项卡,在那里您会找到Public Version
.
您不必发布项目,构建过程会获取该信息并将其写入生成的 .vsto
文件。
在.vsto
中你可以找到XmlElement
AssemblyIdentity
作为例子:
<assemblyIdentity name="xxxx.vsto" version="1.2.3.4"
您还可以在项目文件中找到该信息(*.csproj
for C#),在那里您会找到一个 XmlElement
ApplicationVersion
作为示例:
<ApplicationVersion>1.2.3.4</ApplicationVersion>
要按照 OP 的要求通过代码更改此信息,我建议提出一个新问题,因为他打算在构建过程中修改它,而我只能想办法在构建之前或之后进行修改.
例如,要在实际插件之外的构建之前更改它,您可以使用以下内容:
var file = @"xxxx.csproj";
var xDoc = XDocument.Load(file);
var ns = xDoc.Root.Name.Namespace;
xDoc.Element(ns + "Project")
.Element(ns + "PropertyGroup")
.Element(ns + "ApplicationVersion").Value = "1.2.3.5";
xDoc.Save(file);