X
xiongdingfu_2
Unregistered / Unconfirmed
GUEST, unregistred user!
我在用delphi语言学首编写Z39.50程序.Z39.50程序一个远程检索对方服务器中的书目数据库的MARC书目的程序.即远程检索分布式数据库.<br> 我用了丹麦一家公司的开发的免费的开发工具包.它是用纯C写成的.现在要用delphi语言调用其动态链接库YAZ.DLL和YAZ.LIB中的函数.<br><br> YAZ下载地址:<br> http://ftp/indexdata.com/pub/yaz<br> 在WIN目录下,可以下载yaz包的安装程序,在其bin目录下将所有c语言写成的dll文件和yaz目录中的lib文件考入您的应用程序目录中,再测试应用程序调用.<br><br> YAZ将自己的函数封装成YAZ.DLL等动态链接库,同时其函数的C文件在ZOOM_connection.h中可以看到.封培的函数有:<br>(1)<br>#include <yaz/zoom.h><br> <br> ZOOM_connection ZOOM_connection_new (const char *host, int portnum);<br> <br> ZOOM_connection ZOOM_connection_create (ZOOM_options options);<br> <br> void ZOOM_connection_connect(ZOOM_connection c, const char *host,<br> int portnum);<br> void ZOOM_connection_destroy (ZOOM_connection c);<br>______________________________________________<br>(2)<br>ZOOM_query ZOOM_query_create(void);<br><br> void ZOOM_query_destroy(ZOOM_query q);<br><br> int ZOOM_query_prefix(ZOOM_query q, const char *str);<br><br> int ZOOM_query_cql(ZOOM_query s, const char *str);<br><br> int ZOOM_query_sortby(ZOOM_query q, const char *criteria);<br>(3)<br> ZOOM_resultset ZOOM_connection_search(ZOOM_connection,<br> ZOOM_query q);<br><br> ZOOM_resultset ZOOM_connection_search_pqf(ZOOM_connection c,<br> const char *q);<br><br> void ZOOM_resultset_destroy(ZOOM_resultset r);<br>(4)void ZOOM_resultset_records (ZOOM_resultset r,<br> ZOOM_record *recs,<br> size_t start, size_t count);<br> ZOOM_record ZOOM_resultset_record (ZOOM_resultset s, size_t pos);<br><br> const char *ZOOM_record_get (ZOOM_record rec, const char *type,<br> size_t *len);<br><br> ZOOM_record ZOOM_record_clone (ZOOM_record rec);<br><br> void ZOOM_record_destroy (ZOOM_record rec);<br><br><br> 我现在要问的就是如何在delphi中如何使用程序检测和调用到这些函数???