0

在编写这个应用程序之前我从未使用过 C#,而且我讨厌 Visual Studio,所以如果我只是愚蠢的话,请多多包涵。

我创建了一个不错的小实用程序,它可以在我的工作中自动化一些痛苦的过程。我已经把它介绍给了很多人,包括许多热衷于使用它的海外人士。

唯一的问题是......我无法让应用程序在我自己的机器上运行。在任何其他机器上,应用程序在启动时立即崩溃。

通过将应用程序打包到安装程序中,如果需要,安装程序会安装正确版本的 .NET,我已经明确排除了有关在客户端计算机中安装 .NET 的任何问题。

到目前为止,我的想法是我正在处理错误地打包我的两个 COM 引用,或者应用程序因安全异常而死亡。

该应用程序使用 COM Excel 引用以及运行我的应用程序的任何客户端都将安装在其计算机上的另一个 COM 引用。我试图分发依赖于 Visual Studio 的应用程序来发挥魔力并提取所需的引用,并强制引用“CopyLocal”。隔离引用失败,但我不确定这是否有必要。

有没有人知道问题可能是什么?不要犹豫,要求我澄清任何事情。

4

1 回答 1

0

您正面临一些部署问题。即使确实在目标机器上复制程序集及其使用的 dll 通常与 .NET 一起工作得很好,但你的情况并不那么简单。首先:

  • 确保目标机器安装了与您用于程序的版本兼容的 .NET 框架(即大于或等于)

  • 确保正确的 COM 对象存在并在目标计算机上注册。这是棘手的部分。由于您使用的是 excel,因此请尝试在目标计算机上安装 Office 的Primary interop 程序集 (PIA)。这可能会解决您的问题。

于 2013-06-14T13:36:41.627 回答