TEST1.dll动态库的原型如下(由VC编译而成):
TEST1_API BOOL _stdcall OpenMedia(HANDLE hPlayer,unsigned char far *lpFilename,HWND hwndMain,HWND hwndVideoshow,RECT *pVideorect)
{
//return 42;
return TRUE;
//return 5;
}
在delphi中如下声明:
MPOpenProc = function(hPlayer:THandle;lpFilename:PChar;hwndMain:HWND;hwndVideoshow:HWND;pVideorect:TRECT):boolean;stdcall;
如下调用:
DLLHandle:=LoadLibrary('TEST1.dll');
@DllOpen :=GetProcAddress(DLLHandle,'OpenMedia');
DllOpen(FhPlayer,FlpFilename,FhwndMain,FhwndVideoshow,FpVideorect);在VC中调试dll,发现其他的参数都能够传过去,就是pVideorect:TRECT出现错误,编译不通过,
请问是不是TRECT与VC中的RECT定义不同而不兼容呢?还是我这边没有用指针,如果要用该如何定义?
TEST1_API BOOL _stdcall OpenMedia(HANDLE hPlayer,unsigned char far *lpFilename,HWND hwndMain,HWND hwndVideoshow,RECT *pVideorect)
{
//return 42;
return TRUE;
//return 5;
}
在delphi中如下声明:
MPOpenProc = function(hPlayer:THandle;lpFilename:PChar;hwndMain:HWND;hwndVideoshow:HWND;pVideorect:TRECT):boolean;stdcall;
如下调用:
DLLHandle:=LoadLibrary('TEST1.dll');
@DllOpen :=GetProcAddress(DLLHandle,'OpenMedia');
DllOpen(FhPlayer,FlpFilename,FhwndMain,FhwndVideoshow,FpVideorect);在VC中调试dll,发现其他的参数都能够传过去,就是pVideorect:TRECT出现错误,编译不通过,
请问是不是TRECT与VC中的RECT定义不同而不兼容呢?还是我这边没有用指针,如果要用该如何定义?
解决方案 »
- 用api代替TSimpleEvent不知道为什么没有效果
- 关于DBGrid排序的代码,请帮忙看下!
- 请TcxDBDataFilterCriteria这个是用的哪个*.dcu啊?
- 关于ADOConnection1和ADOQuery1控件的问题
- 请问怎样用程序得到一个mpg(mpeg)文件的尺寸(高和宽)?此问题已问了两次了,屁都未回一个。看来CSDN确实不行了。呵呵!
- 关于TQuery
- 请问怎样用Delphi通过Internet发送传真,可否给个Demo([email protected]),万分感激!
- MapX中layer.selection怎么不完整呢?
- parameter not found
- 寻找 ch81(missile)!!!
- BDE不能及时刷新?
- 在线等待……,怎样根据日期自动生成编号????
MPOpenProc = function
(hPlayer:THandle;lpFilename:PChar;hwndMain:HWND;hwndVideoshow:HWND;var pVideorect:TRECT):boolean;stdcall;