delphi调用dll问题,300分全部送上。
我用delphi调用一个VC++的dll
这个dLL我没有源码。大小写绝对正确
dll里面的一个CloseCommPort函数,dll说明说里面有,说明如下:
5、CloseCommPort
VOID PASCAL CloseCommPort(HANDLE hCom)
功能说明:关闭指定的通信端口。
参数说明:
返回值:无
相关函数:
我用eeXeScope查看也有这个函数
但是我动态,静态调用CloseCommPort这个函数都会报内存错误
动态调用
Fun3 := GetProcAddress(FHandle,'CloseCommPort')
if Assigned(Fun3) then
Assigned(Fun3)返回为false
也就是说并未加载到此函数。
这是为什么呢?
下面是我写的delphi代码 ,谁能帮我解决我会300分送上
TFun1=function(lpszPortNum: LPCSTR;dwBaudRate: DWORD): DWORD; stdcall;
TFun2=procedure(hCom: Thandle); stdcall;
TFun3=function(DevNo: LPCSTR;var pAbout: LPSTR): DWORD ; stdcall;
Var FHandle: THandle;
Fun1: TFun1; //打开端口
Fun2: TFun3; //读取版本信息
Fun3: TFun2; //关闭端口
DevNo: LPCSTR;
pAbout: LPSTR;
begin
FHandle := LoadLibrary('168netcom.dll');
try
if FHandle>0 then
begin
Fun1 := GetProcAddress(FHandle,'OpenCommPort'); //打开端口
if Assigned(Fun1) t
相关问答:
我在模块里自定义了一个函数:stradd()
可是在adoquery1.sql.add('select stradd(author) from book');
时提示stradd未定义...
这个问题有什么办法可以解决的吗? 非常感激!
(在A ......
delphi如何向Access数据表中自定义字段?然后显示到DBGrid中
怎么没人理我呀
分分忒少咧,一般人都懒得进来……*^_^*
SQL
creat table TableName(ID Counter Primary Key,FieldName varchar(20))
ADOQue ......
这个是拦截按键消息并测试是否为ENTER键。
begin
case wParam of
WM_KEYDOWN:
fEatKeystroke := (p.vkCode = VK_RETURN);
& ......
有一个叫 Taking() 的procedure,
有二个按钮,
问题, 点第一个按钮的代码是调用Taking()的, 怎么才能点第二个按钮把Taking()终止或撤销
加个变量,做判断,为False时,E ......
谁能给我一个判断邮箱是否合法的例子
多谢
提供些别的:
电子邮件地址的构成
电子邮件地址的格式是“USER@SERVER.COM”,由三部分组成。
第一部分“USER”代表用户信箱的帐号,对于同一个邮件接 ......