gpt4 book ai didi

c# - 在 C# 中动态加载和使用 COM 对象

转载 作者:行者123 更新时间:2023-11-30 12:16:35 25 4
gpt4 key购买 nike

我有一个 C# 项目,我想在其中访问 MS Outlook,如果它安装在客户端的机器上的话。 “访问 outlook”部分已通过引用 outlook COM 对象并从那里开始完成。我现在的问题是“如果已安装”部分。目前,我的项目不会在没有安装 outlook 的机器上编译,所以我假设我将不必引用 outlook 组件,而是在检测到 outlook 存在后动态加载和使用它,但我没有找到了一种方法来做到这一点。我说得对吗?有人对如何执行此操作有任何提示吗?

谢谢。

编辑:已解决。遵循 Hans Passant 在关于使用办公室 PIA 的评论之一中给出的建议,被证明是阻力最小的途径。我在我的无办公室机器上获得 PIA 有点困难,但使用对 this 的公认答案克服了这个问题。问题。

最佳答案

如果没有 Outlook COM 对象,您肯定无法在机器上编译您的程序集,但这并不意味着您的应用程序将完全无法在没有 Outlook 的机器上运行 - 只是尝试创建或使用 Outlook COM 对象将导致失败/异常被抛出。

根据 this question检测 COM 对象是否存在的最佳方法是简单地尝试实例化它并在未安装它的情况下捕获由此产生的异常。

关于c# - 在 C# 中动态加载和使用 COM 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5041431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com