Visual Studio 2012 - 自定义先决条件未显示在“属性”>“先决条件”对话框中

问题描述:

我使用Visual Studio创建了我的第一个Office外接程序。它的目标是4.0 .Net框架,并使用新的VS 2012创建。我需要在办公室的各种32位XP和64位Windows 7计算机上分发/安装此项目。所以我将该项目配置为安装在XP上(这是我的第一个减速带,因为我没有意识到VS 2012需要更新才能制作出与XP兼容的解决方案)。现在我有一个有效的win32应用程序,我收到另一个错误:Visual Studio 2012 - 自定义先决条件未显示在“属性”>“先决条件”对话框中

尝试安装'C:\ filepath ... \ Import Contacts.vsto'时出现以下错误: “没有应用程序与指定文件进行此操作。“

在做了一些挖掘之后,我想我需要在客户端计算机上安装Microsoft Visual Studio Tools for Office Runtime。为此,我想为项目使用先决条件属性。因此,我详细阅读了如何使用一些值得注意的网站创建自定义先决条件(例如,Creating Bootstrapper PackagesApplication Deployment Prerequisites,Adding Custom PrerequisitesCreating a Bootstrapper package for Office 2013 in Visual Studio 2012)。 我根据最后一个URL创建了文件(尽管我不确定它是否与我需要的软件包有关),,但它并未出现在项目>属性>发布>先决条件

下的对话框中

如果您阅读文章,它说,一旦我重新启动VS 2012,VS prerequisites对话框应该会自动更新,但我没有做到。我知道我将来需要再次使用这个功能,所以我真的很想知道我做错了什么,并解决了这个问题。请帮忙!我保证尽快给予接受谁的人帮我解决这个问题!先谢谢你。

按照网页中给出的指示,我没有任何问题,并且已将引导程序添加到“先决条件”对话框中。然而,有很多可能的方法让它错误。一些可能性:

  • 三重检查您将这些文件添加到的文件夹。请确保您在64位版本的Windows上选择Program Files (x86),而不是Program Files。并且确保您现在可以看到添加的VSTOR40文件夹以及其他现有引导文件夹,例如ReportViewer和VBPowerPacks。
  • 您没有对此文件夹的写入权限,UAC禁止在此处复制文件。确保你设法从提升的命令提示符中复制它们。右键单击命令提示符快捷方式,然后单击“以管理员身份运行”。
  • 如果您使用记事本创建了.xml文件,请确保您没有意外地将它们保存为.txt扩展名。如有必要,请将资源管理器置于“程序员模式”,以便您可以看到文件扩展名。控制面板+文件夹选项“,”查看“选项卡,取消选中”隐藏已知文件类型的扩展名“复选框。如果您现在看到product.xml.txt,则将该文件重命名为product.xml,对于package.xml.txt也是如此
  • 如果使用记事本创建了.xml文件,请务必以UTF-8编码保存文件。文件+另存为,编码组合框。
+0

太棒了!最后有人给它一个镜头。在XML文件上将文件编码更改为UTF-8后,它就起作用了。非常感谢你的帮助。 – Lopsided

对于所有仍然可能面临类似问题的人,我认为我找到了这个问题的原因。看起来,使用自定义引导程序包(及其中的所有必需文件)复制文件夹不会“刷新”可用包列表。只有当我通过本演练以及手动为%Programfiles%\ Microsoft SDKs \ Windows \ v7.0A \ Bootstrapper \ Packages \创建文件夹时,本演练的示例包我的包已显示