看上去像是:
一个过程指针。
type
ViewCTL_PDecodeBegin = procedure(dwSlotNumber: DWORD; dwParam1: DWORD; dwParam2: DWORD); stdcall;
一个过程指针。
type
ViewCTL_PDecodeBegin = procedure(dwSlotNumber: DWORD; dwParam1: DWORD; dwParam2: DWORD); stdcall;
解决方案 »
- 求助:CXGRID中COMBBOX问题
- 问一下:我要实现一个输入形如ip地址的edit之类的文本框?怎么办?
- 菜鸟级问题
- 高分寻找类似于ShellComboBox的控件
- delphi爱好者都来预测一下delphi的未来!!!!!
- 关于窗体引用的问题,大家帮忙,一定给分
- 不难!
- ***高手请进***:OICQ是怎样调用NetMeeting呼叫好友的?
- 别做程序,这里同样可以发财
- 老鱼,怎么使treeview用imagelist里的图表?我在treeview的stateimage属性选择了imagelist,却找不到treeview哪能控制选择imagelist里的图表的地方。
- 关于Interbase的安全性问题。
- Help!!!ODBC驱动有错吗,VFP库中的照片字段始终无法在DBImage里显示
type
VIEWCTL_PDecoderBeginProc = procedure(dwSlotNumber,
dwParam1, dwParam2: DWORD); stdcall;
PVIEWCTL_PDecoderBeginProc = ^VIEWCTL_PDecoderBeginProc;使用的时候直接声明这个过程指针类型的变量或者过程类型变量:
var
PProc: PVIEWCTL_PDecoderBeginProc; // 过程类型指针变量
Proc: VIEWCTL_PDecoderBeginProc; // 过程类型变量在赋值时,PProc 可直接获取函数地址,而 Proc 必须用 @Proc := 的形式获取函数地址:
hDLL := LoadLibrary('ddd.dll');
PProc := GetProcAddress(hDLL, 'DecoderBeginProc'); // 我假设 DLL 中的函数名字
@Proc := GetProcAddress(hDLL, 'DecoderBeginProc'); // 注意 Proc 的赋值方式在调用时,Proc 直接当作函数名调用,而 PProc 必须以 PProc^ 的形式作为函数调用:
Proc(a, b, c);
PProc^(a, b, c);大致就是以上这些。