【问题标题】:Debug PowerPoint VSTO Add-In with opening a file by default调试 PowerPoint VSTO 加载项,默认打开文件
【发布时间】:2018-05-28 23:03:14
【问题描述】:

在我的 PPT Add-In 中有一个错误,当您双击 PPT 文件时,我没有正确运行一些初始化。此初始化启用功能区上的某些按钮,应在打开第一个演示文稿时完成(并且在关闭最后一个演示文稿时禁用按钮)。

如果我用/O FileName 参数打开POWERPNT.EXE,我也可以重现该问题。

我不能用这些命令行参数开始调试,因为我可以在项目设置中设置的命令行参数似乎没有委托给POWERPNT.EXE

有没有办法做到这一点,还是我需要回退到 phpesque 调试(也就是记录到控制台)?

【问题讨论】:

  • 所以在选项卡调试的项目属性中,您确实设置为“启动外部程序”并指定了“命令行参数”,这不起作用?
  • @RandRandom 默认情况下,启动操作是“启动项目”。切换到“启动外部程序”时,参数已正确注册,我可以调试。随意将您的评论转换为答案,我会接受。

标签: c# debugging vsto powerpoint command-line-arguments


【解决方案1】:

要根据需要传递命令行参数,您必须切换到“启动外部程序”下

项目属性 --> 选项卡“调试” --> 部分“开始操作”

然后使用“浏览”按钮填写您希望启动的所需外部程序,在本例中为 Power Point 的路径,或者只需键入/粘贴它。

然后在下面的文本框中填写命令行参数。

注意

只有在使用 AddIn 项目时才需要这样做,因为它们的启动例程不同于“普通”窗口/控制台应用程序。有了这些,“开始项目”将正确地尊重命令行参数。

AddIn 项目的项目文件中有类似的内容:

  <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="{xxxxx}">
        <ProjectProperties HostName="PowerPoint" HostPackage="{xxxxx}" OfficeVersion="15.0" VstxVersion="4.0" ApplicationType="PowerPoint" Language="cs" TemplatesPath="" DebugInfoExeName="#Software\Microsoft\Office\15.0\Word\InstallRoot\Path#POWERPNT.EXE" DebugInfoCommandLine="/x" AddItemTemplatesGuid="{51063C3A-E220-4D12-8922-BDA915ACD783}" />
        <Host Name="PowerPoint" GeneratedCodeNamespace="PowerPointAddIn" IconIndex="0">
          <HostItem Name="ThisAddIn" Code="ThisAddIn.cs" CanonicalName="AddIn" CanActivate="false" IconIndex="1" Blueprint="ThisAddIn.Designer.xml" GeneratedCode="ThisAddIn.Designer.cs" />
        </Host>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>

您可以将所需的命令行参数传递给该值DebugInfoCommandLine="/x",然后在使用“开始项目”时传递这些参数。

【讨论】:

    【解决方案2】:

    如果要使用不同版本的 Office(2013 或 2016)调试 VSTO 外接程序,请打开 Project Designer,然后在 Debug 选项卡中选择 Start external program 选项按钮。然后,浏览到相应的 Office 应用程序可执行文件的位置。您还可以在此处为 Office 应用程序指定命令行参数。请参阅Debugging Office Projects 了解更多信息。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多