我爱Aspx >> VC.Net >> <b>VB调用C程序的方法—动态链接库法</b>/*************************************/
#include <windows.h>
/***********入口函数***********/
int FAR PASCAL LibMain ( HANDLE hInstance,
WORD wDataSeg,
WORD cbHeapSize,
LPSTR lpszCmdLine )
{
if (cbHeapSize!=0)
UnlockData(0);
return (1);
}
/***********输出函数***********/
int FAR PASCAL example(int param1,...,char param n)
{
...... /*C语言应用程序*/
}
/***********终止函数***********/
int FAR PASCAL WEP ( int /*SystemExit*/ )
{
return(1);
}
以上各组成部分参数的含义:Windows.h头文件,它包含有数据类型的定义、API入口点定义和其它有用的参数信息。PASCAL说明符定义该程序的传递参数和净化堆栈的协定(注意:DLL外部传送的指针必须是远指针FAR)。LibMain带四个参数:
hInstance、 wDataSeg、cbHeapSize和lpszCmdLine。第一个参数hInstance是DLL事例句柄, wDataSeg参数是数据段(DS)寄存器值,cbHeapSize参数是在模块定义文件中定义的堆的大小,LibMain 使用该值使本地堆初始化。lpszCmdLine参数包括命令行信息,但很少被DLL使用。一般来说,这四个参数是制作DLL通用的参数。
【我对这篇文章有话说?】
<b>C++指针使用方法解惑&l..[05-21]
<b>一个简单的显示文字控件..[05-21]
<b>用户界面设计的技巧与技..[05-21]
<b>在VC中动态加载 ODBC的..[05-21]
<b>制作VC表格控件</b&..[05-21]
<b>为CListBox加上智能水平..[05-21]
<b>Visual C++中的图形特技..[05-21]
<b>用VC 开发基于ORACLE数..[05-21]
<b>在VC中怎样实现软件的注..[05-21]
<b>Visual C++中位图按钮的..[05-21]