我想把INTERBASE的API函数封装,谁能帮我---高手请进(100分)

  • 主题发起人 主题发起人 bigbug
  • 开始时间 开始时间
B

bigbug

Unregistered / Unconfirmed
GUEST, unregistred user!
我想把INTERBASE的API函数ISC_ADD_USER封装以便在DELPHI中调用,API函数原型如下(c语言):
sec_uid_spec 0x01 ;
sec_gid_spec 0x02 ;
sec_server_spec 0x04 ;

long isc_status ;

typedef struct {
char *server ;
short sec_flags ;
:
:
}user_sec_data ;

isc_status isc_add_user( isc_status *status
user_sec_data *user_sec_data) ;

c中的使用方法如下:
{
isc_status status[20] ;
user_sec_data sec ;
sec.server = "abc" ;
sec.sec_flags = sec_uid_spec
| sec_gid_spec
| sec_server_spec ;
:
:
isc_add_user(status,&sec) ;
我对C语言不熟悉,请帮忙。
1。isc_status status[20] 如何转换成PASCAL语言。
2。sec.sec_flags = sec_uid_spec
| sec_gid_spec
| sec_server_spec 如何转换成PASCAL语言
3。isc_add_user(status,&sec) 如何转换成PASCAL语言,最好有完整程序
4。返回值。
 
isc_status 由c的struct换成delphi的record
char* 变成 PChar
short 变成 smallint
...

isc_status status[20] 就是 array[0..19] of isc_status
| 就是 or (按位“或”)
status 就是 @status
&sec 就是 @sec
 
看看DELPHI中是如何将WINAPI的STATUS转换成RECORD或其它的PAS文件吧!
 
多人接受答案了。
 
后退
顶部