php 调用c dll文件,如何从Visual Basic 2010中调用C dll文件

好的,在你的帮助和相当多的谷歌之后,这终于有效了!

这是一个破败,如果它在未来帮助其他任何人:

>使用Ultimate Header File获取有关如何创建头文件的蓝图.

>重要的是要理解如何编译C不会命名mangle,而编译为C将.

>看起来DevC有一个简洁的BUILDING_DLL标志,但Visual Studio要求你在main.c文件中创建一个定义.

> __stdcall执行一个名为“名称修饰”的东西,它与名称修改不同,但仍会更改您的函数名称.感谢@slugonamission给我一个指针.最终在使用dumpbin.exe时单击,如@HansPassant所示.

>所以,切换到__cdecl设法避免名称修饰,并在C中编译(或使用extern并在C中编译)避免名称修改.

>和dll最终会给我CalcGraph作为一个有效的切入点!

隐式/显式dll链接是一个非常重要的区别.隐式链接需要.lib文件,.dll以及.h文件.明确的链接是我所追求的 – 你可以自己逃脱.dll.感谢@squelos解释此链接.

最后但并非最不重要:

在DLL中:

extern _COMPILING_ void __cdecl CalcGraph(PanelParameters *, Calculations *);

并在VB代码中:

Imports System.Runtime.InteropServices

Private Declare Sub CalcGraph Lib "myDLL.dll" (ByRef params As Parameters, _

ByRef calcs As Calculations)

它终于奏效了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值