【问题标题】:Intro to COM DLLCOM DLL 简介
【发布时间】:2011-01-26 15:29:21
【问题描述】:

在你告诉我“google it”之前 - 听我说完。我来自 C++ 和 Perl/Python(在 Linux 上)背景,但我有一些项目即将到来,我必须跳入 Windows 开发。专门创建一些 COM DLL(不是 .Net)。顺便说一句,在阅读了一些资源之后,我对 COM 和 DLL 是什么有了基本的了解。

我尝试在 Google 上进行搜索,但我遇到的大多数教程都假设有一些 Windows 开发经验,或者至少在我看来是这样。所以,我想知道是否有人走过了类似的道路,并且可能会指出一个可以帮助我开始开发 COM DLL 的方向。我可以访问 VS2005。谢谢。

【问题讨论】:

  • 请注意,您可以使用 .NET 语言(VB.NET 或 C#)创建 COM 组件。另外,请注意 VS2008 Express Editions 是免费的,因此您不必拘泥于过去的 VS2005。最后,完整的 VS2010 Ultimate Edition Release Candidate 可供现在免费下载,因此您有机会及时了解最新信息 - 它会在一个月内发布。
  • 我不知道VS2010是免费下载的。我应该检查一下。谢谢。

标签: windows com dll


【解决方案1】:

在 VS 中编程时尝试Create a COM Visible Component

【讨论】:

    【解决方案2】:

    “无 .NET”要求迫使您使用非托管 C++ 编写代码。 COM 有一个相当陡峭的学习曲线,使用 ATL 稍微变平了。至少会帮助您正确掌握基础知识。 VS2005 有内置的类向导来生成您需要的样板代码并使您的代码和 IDL 保持同步。您需要一本好的 COM 书籍(很难找到)和 Chris Sells 的 ATL Internals。

    【讨论】:

    • @nobugz:我读到的不是他不能使用.NET,而是他需要创建一个COM DLL而不是“.NET DLL”。也就是说,他需要使用 COM 而不是创建“普通”代码。
    • 是的,我应该限定我的陈述。这个 dll 将被 Perl 和 Python 等脚本语言使用。所以我无法创建托管 dll。至少这是我从搜索中学到的。如果我错了,请纠正我。
    • @John,这不准确。当您使用 [ComVisible(true)] 时,COM 互操作支持将自动为您引导 CLR。这将比 ATL 更容易上手。
    • 感谢您提供的信息。看起来这对我来说可能是一个更好的选择。
    猜你喜欢
    • 2012-09-22
    • 2014-09-24
    • 2015-01-15
    • 2017-02-21
    • 2014-03-18
    • 1970-01-01
    • 2013-05-28
    • 2018-09-13
    • 2011-10-12
    相关资源
    最近更新 更多