关于ODBC的(100分)(100分)

  • 主题发起人 主题发起人 angleli1981
  • 开始时间 开始时间
A

angleli1981

Unregistered / Unconfirmed
GUEST, unregistred user!
我写了个程序是关于ODBC的,下面是部分代码

procedure AddODBCDSN;
var
cemdsn, dbq : String;
begin
dbq := HomeDir + DatabaseSubDir + DBFile;
cemdsn := 'DSN=cem'#0 +
'DESCRIPTION=Credit Evaluate Manager数据库别名'#0 +
'DBQ=' + dbq +#0 +
'FIL=MS Access;'#0#0;
SQLConfigDataSource(0, ODBC_ADD_DSN, 'Microsoft Access Driver (*.mdb)', PChar(cemdsn));
end;

编译时总是报错,话没声明SOLconfigDatasource如何解决?
有例就发到angleli1981@163.com
 
请动态或静态的调用Odbcinst.dll库,因为这个函数是Odbcinst.dll里面的!
以下是说明:

Windows系统子目录中的动态链接库 Odbcinst.dll提供了一个可以动态地增加、修改和删除数据源的函数 SQLConfigDataSource()。该函数的原型如下:
BOOL SQLConfigDataSource(HWND hwndParent,WORD fRequest, LPCSTR lpszDriver, LPCSTR lpszAttributes);
hwndParent参数是父窗口句柄。如果该值为 NULL,将不会显示与父窗口有关的对话框。
fRequest参数可以设置为下面的数值之一:
? ODBC_ADD_DSN:增加一个新的用户数据源;
? ODBC_CONFIG_DSN:修改(配置)一个已经存在的用户数据源;
? ODBC_REMOVE_DSN:删除一个已经存在的用户数据源;
? ODBC_ADD_SYS_DSN:增加一个新的系统数据源;
? ODBC_CONFIG_SYS_DSN:修改 (配置 )一个已经存在的系统数据源;
? ODBC_REMOVE_SYS_DSN:删除一个已经存在的系统数据源。
lpszDriver参数用于传递数据库引擎的名字,等同于方法一中 strDbType变量。
lpszAttirbutes参数是关键字的值,即一连串的 " keyname=value"字符串,每两个字符串之间用 " /"隔开,如 DSN=Personnel Data/0UID=Smith/0DATABASE=Personnel。关于该参数的详细设置请参阅 MSDN中 SQLConfigDataSource()函数的帮助文档和各种 ODBC驱动程序文档。
 
接受答案了.
 
后退
顶部