gpt4 book ai didi

c# - 在 C# 中使用导入的 C++ dll 中的事件处理程序

转载 作者:太空宇宙 更新时间:2023-11-04 13:54:56 25 4
gpt4 key购买 nike

我正在使用提供方法和一些事件处理程序的第 3 方 C 库。我想订阅一个或多个事件,但我不知道如何结合在 C# 中导入 C 库来做到这一点。

方法没有问题。例如我用这个

[C++]
API ResultType DoSometing(DeviceHandle devHndl);

[C#]
[DllImport("Some.dll", CallingConvention = CallingConvention.Cdecl)]
private static extern ErrorType DoSomething(IntPtr devHndl);

对于事件我有如下定义:

[C++]
typedef ResultType (CALLING_CONVENTION *FPtr_GetStatus)(DeviceHandle);
typedef void (CALLING_CONVENTION *FPtr_DeviceEventHandler)(DeviceHandle devHndl, DeviceEvent event, void *context);
API FPtr_DeviceEventHandler RegisterSomeEventHandler(FPtr_DeviceEventHandler handler, void *context);

知道如何在 C# 代码中处理这个问题吗?

最佳答案

关于c# - 在 C# 中使用导入的 C++ dll 中的事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21939092/

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