【问题标题】:Error 1001 An error occured in sending the command to the application错误 1001 向应用程序发送命令时出错
【发布时间】:2011-05-10 20:42:09
【问题描述】:

COM Excel 插件、C#、VS2008 当我安装/卸载我的插件时,偶尔会发生错误。 有时我会看到错误 1001 找不到指定的文件

有谁知道是什么原因造成的以及如何解决?谢谢

我用的是windows安装程序

http://msdn.microsoft.com/en-us/library/2w2fhwzz%28v=VS.90%29.aspx 表示如果使用 [TARGETDIR],它应该像“[TARGETDIR]\”或“[TARGETDIR]”。我只是在 CustomActionData
中使用 /filepath = "[TARGETDIR]myinstallfile" 我不明白的是它几乎一直有效,偶尔会失败 此外,即使我将其更改为包含空格或反斜杠,我也无法判断这是否解决了问题,因为问题并非每次都发生。有人有经验吗?谢谢

【问题讨论】:

    标签: c# excel com installation add-in


    【解决方案1】:

    我发现了这个并解决了这个问题,尽管我不确定我是否曾经在我的程序中使用过 DDE http://sympmarc.com/2010/02/04/microsoft-excel-error-there-was-a-problem-sending-the-command-to-the-program/

    【讨论】:

    • 事实上,修复并非每次都有效。它解决了一个案例。但是另一种情况,同样的错误,取消勾选允许DDE后,用户仍然看到同样的错误
    【解决方案2】:

    然后我发现了这个http://www.opendylan.org/documentation/opendylan/interop2/inte_278.htm 它谈到了 COM 服务器 所以我去cmd,输入“Excel.exe /RegServer”,然后错误就消失了。 我真的不确定这个解决方案是否适用于所有情况。 事实上,我担心我在安装程序中错过了某事。

    【讨论】:

      【解决方案3】:

      这里有一个Microsoft Support page,与一个看起来很相似的问题相关。所以对我来说,它看起来像是 Excel 中的错误,而不是您的安装程序中的错误。

      这篇文章很大,但归根结底是要确保:

      • 您的 Excel 应用程序未以提升的权限运行
      • 高级设置“忽略使用动态数据交换 (DDE) 的其他应用程序”未选中

      除此之外,您可能会尝试修复 Excel 安装或按照this thread of ASP.NET 论坛中提供的建议修复 Excel 安装注册表。

      我希望它可以帮助遇到类似问题的人。

      【讨论】:

        【解决方案4】:

        如果您在卸载 VS 安装项目 MSI 时遇到此类错误,则最可能的原因是在安装和卸载之间未保留 TARGETDIR,因此它没有任何价值,并尝试在卸载中使用它自定义操作将导致找不到文件。最简单的解决方案(除了总是安装到已知位置,例如公共文件等)是将 TARGETDIR 保存到注册表并稍后检索它。在 VS IDE 中,您可以创建一个值为 [TARGETDIR] 的注册表项,以便在安装时解析它。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-02-14
          • 2015-01-25
          • 2020-02-14
          • 1970-01-01
          • 2012-08-14
          • 1970-01-01
          相关资源
          最近更新 更多