gpt4 book ai didi

.net - 可以从 .net 调用的非常简单的 C++ DLL

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:01:42 25 4
gpt4 key购买 nike

我正在尝试从 vb.net 2005 调用第 3 方供应商的 C DLL,但出现了 P/Invoke 错误。我成功地调用了其他方法,但在其中一个更复杂的方法上遇到了瓶颈。所涉及的结构非常可怕,为了简化故障排除,我想创建一个 C++ DLL 来复制该问题。

有人可以提供可从 .Net 调用的 C++ DLL 的最小代码片段吗?我的 C++ dll 中出现 Unable to find entry point named XXX in DLL 错误。解决起来应该很简单,但我不是 C++ 程序员。

我想为 DLL 使用 .net 声明

Declare Function Multiply Lib "C:\MyDll\Debug\MyDLL.DLL" Alias "Multiply" (ByVal ParOne As Integer, ByVal byvalParTwo As Integer) As Integer

最佳答案

尝试使用 __decspec(dllexport) C++ 函数声明中的魔法 Sprite 尘。此声明设置了从 DLL 成功导出函数所需的几项内容。您可能还需要使用 WINAPI 或类似的东西:

__declspec(dllexport) WINAPI int Multiply(int p1, int p2)
{
return p1 * p2;
}

WINAPI 设置函数调用约定,使其适合从 VB.NET 等语言调用。

关于.net - 可以从 .net 调用的非常简单的 C++ DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39064/

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