我编写了一个小应用程序,正在分发给我的一些 friend 。它与网页交互,唯一我认为奇怪的依赖项是 Microsoft.mshtml.dll 与某些 Web 控件交互。
我们注意到一个奇怪的行为,即在某些计算机上它可以工作,而在其他计算机上则不能。我告诉他们所有人确保安装 .Net 4.0 Framework FULL 而不是客户端配置文件。还是不行。
我的一个 friend 注意到,他的机器可以正常运行,但其他人没有安装 Microsoft Word。所以他安装了一个试用版,神奇地,我的程序开始运行了!
.Net Framework 中没有的 Microsoft Word 安装了什么?有什么办法可以向他们发送所需的文件吗?
注意:我最初使用的是安装程序,它运行良好,但我无法弄清楚如何更新应用程序,所以我们又求助于我,只是将应用程序以 zip 格式发送给他们。所以请不要回答说“制作一个安装程序项目”。我目前正在尝试弄清楚如何制作更新程序,这不是这里讨论的主题。
谢谢!
编辑:我没有有意向 Word 添加任何依赖...
最佳答案
如果您正在使用一些库,例如 Microsoft.mshtml.dll,它们不是 .Net 框架的一部分,而是 Native .Net 的一部分,那么目标机器可能缺少这些库。例如Microsoft.mshtml.dll 随您的 Visual Studio 工具一起提供,用于办公支持等。因此,如果目标计算机上未安装 Office/Visual Studio,则应用程序将无法运行。
作为替代解决方案,识别它们并保留这些依赖 dll 的本地副本并将它们运送到您的包中。但这不是最佳做法。
但是Paul_R说的没错。在发布之前确定您的客户端基础架构、计划和测试一次(在目标环境中)。请记住,您有一台 Developer 机器,而其他机器则没有。
关于c# - 依赖 : Microsoft Word?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17279178/