大侠请看:如何用objectarx2004编写连接外部数据库的?
原有一段代码如下:(适用于AUTOCAD R14)void CInputHoleData::InitDataBase()<BR>{<BR> /* Initialize Asi application */<BR> if (asi_initasi (&appl) == kAsiBad) {<BR> ads_printf ("\nCannot initialize ASI");<BR> }
do_connect();
}<BR>void CInputHoleData::do_connect(void)<BR>{<BR> static char buffer; // Temporary buffer
if (session == 0) {<BR> if (asi_constr_session (&session, appl) == kAsiBad) {<BR> ads_printf ("\nUnable to construct session");<BR> return;<BR> }<BR> }<BR> // Disconnect if already connection exists<BR> if (isConnected == kAsiTrue) {<BR> if (asi_disconnect (session) == kAsiBad) {<BR> ads_printf ("\nCan't terminate SQL session. Fix problems and try again ...");<BR> return;<BR> }<BR> isConnected = kAsiFalse;<BR> }<BR> for (;;) {<BR> if ( asi_connect (session, "DB3", "" , "") == kAsiGood ) {<BR> /* display driver information */<BR> asi_dbms (session, buffer, 128);<BR> ads_printf ("\nDBMS: %s", buffer);
asi_sqlobject (session, buffer, 128);<BR> ads_printf ("\nSQL Object Id: %s", buffer);
asi_message (session, buffer, 128);<BR> ads_printf ("\nMessage: %s", buffer);<BR> isConnected = kAsiTrue;<BR> ads_printf("\n--------加载数据请稍等!\n");<BR> break;<BR> }<BR> }<BR> return ;<BR>}
但现在我要把它移植到AUTOCAD2004,我已被次段代码困扰一个星期了,急得要命!
现在向斑竹及各位大侠求助!
多谢! 小贺
致敬! 如果速度要求不是很高,建议用odbc重写 感谢版主的回复,但我学习objectarx时间不长,你讲的odbc重写的方法我不太懂,
版主能不能讲的具体一点,我得时间比较紧,我很渴望大家的帮助!
谢谢! 小贺 因为你是老板本的
asi的方式我也不懂,
用odbc就和普通vc程序一样
你找本vc数据库的书看看就知道了 不建议用ODBC,建议使用ADO,意义就不多讲了。 用C++ OLE DB 请问版主,ADO与自由表DBF文件怎样建立连接?
页:
[1]