下面这个转换成delphi 要怎么转换??请大家帮帮咯
typedef int (*LPONUSSDREQUEST)(HANDLE hLoginInstance, HANDLE hUssdDialog,
TUssdData UssdData, DWORD *pdwUssdAppParam);
typedef int (*LPONUSSDRESPONSE)(HANDLE hLoginInstance, HANDLE hUssdDialog,
char szUssdString[], DWORD dwUssdAppParam);
typedef int (*LPONUSSDABORT)(HANDLE hLoginInstance, HANDLE hUssdDialog,
DWORD dwErrorCode, DWORD dwUssdAppParam);
typedef int (*LPONUSSDTIMEOUT)(HANDLE hLoginInstance, HANDLE hUssdDialog,
DWORD dwUssdAppParam);
typedef int (*LPONUSSDCHGACK)(HANDLE hLoginInstance, HANDLE hUssdDialog,
DWORD dwErrorCode, DWORD dwUssdAppParam);
struct TUssdCallbacks
{
LPONUSSDREQUEST m_pOnUssdRequest;
LPONUSSDRESPONSE m_pOnUssdResponse;
LPONUSSDABORT m_pOnUssdAbort;
LPONUSSDTIMEOUT m_pOnUssdTimeOut;
LPONUSSDCHGACK m_pOnUssdChgAck;
};
typedef int (*LPONUSSDREQUEST)(HANDLE hLoginInstance, HANDLE hUssdDialog,
TUssdData UssdData, DWORD *pdwUssdAppParam);
typedef int (*LPONUSSDRESPONSE)(HANDLE hLoginInstance, HANDLE hUssdDialog,
char szUssdString[], DWORD dwUssdAppParam);
typedef int (*LPONUSSDABORT)(HANDLE hLoginInstance, HANDLE hUssdDialog,
DWORD dwErrorCode, DWORD dwUssdAppParam);
typedef int (*LPONUSSDTIMEOUT)(HANDLE hLoginInstance, HANDLE hUssdDialog,
DWORD dwUssdAppParam);
typedef int (*LPONUSSDCHGACK)(HANDLE hLoginInstance, HANDLE hUssdDialog,
DWORD dwErrorCode, DWORD dwUssdAppParam);
struct TUssdCallbacks
{
LPONUSSDREQUEST m_pOnUssdRequest;
LPONUSSDRESPONSE m_pOnUssdResponse;
LPONUSSDABORT m_pOnUssdAbort;
LPONUSSDTIMEOUT m_pOnUssdTimeOut;
LPONUSSDCHGACK m_pOnUssdChgAck;
};
解决方案 »
- 如何在TDBGrid刷新 后 继续定位到刷新前的记录
- Ehlib中怎样把当前的DBGridEh导出为Excel(*.XLS),有那位大虾知道吗!
- 在做DELPHI数据库时,不知道不觉中报了一个这样得错。那位高手可以帮我解决一下!
- 心情不好,放个消息!程序员们可以有意外之财阿!
- 数据库问题 !!!!
- 关于自己出来创业!
- WM_PASTE之前检查PASTE的字符串是否合法
- 如何能得到SQL SERVER中的所有数据库名
- 关于web发布的问题??????
- 请问NMTIME是干什么的?
- dll的头文件怎么转换成delphi????关于USSD开发的API
- 怎样定义ActionManager中的action行为?
type LPONUSSDREQUEST = function(hLoginInstance:THANDLE; hUssdDialog:THANDLE; UssdData:TUssData;
// var dwUssdAppParam: DWORD):Integer; stdcall; // 也可以 dwUssdAppParam:PDWORD):Integer;stdcall;
type LPONUSSDRESPONSE = function(hLoginInstance:THANDLE; hUssdDialog:THANDLE; szUssdString: PChar;
dwUssdAppParam:DWORD):Integer; stdcall;
type LPONUSSDABORT = function(hLoginInstance:THANDLE; hUssdDialog:THANDLE;
dwErrorCode,dwUssdAppParam: DWORD):Integer; stdcall;
type LPONUSSDTIMEOUT = function(hLoginInstance:THANDLE; hUssdDialog:THANDLE;dwUssdAppParam: DWORD)::Integer; stdcall;type LPONUSSDCHGACK = function(hLoginInstance:THANDLE; hUssdDialog:THANDLE;
dwErrorCode,dwUssdAppParam: DWORD):Integer; stdcall;type TUssdCallbacks = record
m_pOnUssdRequest: LPONUSSDREQUEST;
m_pOnUssdResponse: LPONUSSDRESPONSE;
m_pOnUssdAbort: LPONUSSDABORT;
m_pOnUssdTimeOut: LPONUSSDTIMEOUT;
m_pOnUssdChgAck: LPONUSSDCHGACK;
end;注意问题
1. 可能上面stdcall不行 会使用cdecl 不过你先用stdcall
2. m_..这样是VC的命名风格 你可以考虑自己改成其他的。
3. 上面的dwUssdAppParam:PDWORD; 可以采用 var dwUssdAppParam: DWORD 这种形式代替