【问题标题】:Win32 Application in C# .NetC# .Net 中的 Win32 应用程序
【发布时间】:2012-05-17 18:56:28
【问题描述】:

我开发了一个基于 Native 调用的基于窗口的应用程序。在这个应用程序中,我处理了大量的鼠标事件、键盘挂钩、绘画等。

我的问题是如何在 C# .Net 中使用该 win32 应用程序(非托管)?

我已经阅读了有关用于包装 win32 应用程序的托管包装器的信息,如果您认为这是最佳选择,那么请向我推荐任何可以帮助我前进的书籍或教程参考。否则,建议您认为在这种情况下最好的任何其他选项。

提前致谢。

【问题讨论】:

  • “在 .Net 中使用”是什么意思?
  • @GazTheDestroyer,就像自定义用户控件一样,我可以将原生窗口拖放到托管窗口上。
  • 您可能必须将该用户控件包装为 ActiveX 才能将其插入到 .NET Windows 窗体中。或者(例如,如果您实现为 Window 类),您可以从 HWND(句柄属性)获取 Windows 并使用 PInvoke 从 .NET 应用程序使用 Windows API 创建子窗口。
  • @VASoftOnline,你有什么参考书或教程可以帮助这个项目吗?
  • 如果您熟悉 Windows API 和/或 COM,您可以在此处阅读如何从 .NET 应用程序中使用它们:msdn.microsoft.com/en-us/library/ms172270.aspx

标签: c# visual-c++ com wrapper unmanaged


【解决方案1】:

至少你可以通过 COM Interop 使用你的 .dll。

【讨论】:

    【解决方案2】:

    如果您想从另一个应用程序“控制”一个应用程序,您有多种选择,其中一个是本地的,另一个是托管的。

    您是否考虑过使用named-pipes 来“控制”您的应用程序?

    【讨论】:

    • 它不是 DLL,它是基于窗口的应用程序,我必须在 C# 程序中使用。
    猜你喜欢
    • 1970-01-01
    • 2010-10-08
    • 2018-04-24
    • 2021-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-23
    相关资源
    最近更新 更多