动态创建 odbc

int MakeSQLServerODBCDSN(LPCTSTR DBServer,LPCTSTR DBName,LPCTSTR DSN,LPCTSTR UID)
{
 BOOL  bInstallDriver=TRUE;
 CRegKey  regKey;
 
 LONG lRet=regKey.Open(HKEY_LOCAL_MACHINE,"Software//ODBC//ODBCINST.INI//SQL Server");
 if(lRet!=ERROR_SUCCESS)
 {
  bInstallDriver=FALSE;
 }
 else
 {
  char  szDirverPath[MAX_PATH]="";
  DWORD  dwCount=100;
  lRet=regKey.QueryValue(szDirverPath,"Driver",&dwCount);
  if((lRet!=ERROR_SUCCESS)||(dwCount<1))
  {
   DWORD dwErr=GetLastError();
   bInstallDriver=FALSE;
  }
  regKey.Close();
 }
 if(!bInstallDriver)
 {
  return -1;
 }
 CString  strKeyValueName="Software//ODBC//ODBC.INI//";
 strKeyValueName+=DSN;
 lRet=regKey.Create(HKEY_LOCAL_MACHINE,strKeyValueName);
 if(lRet!=ERROR_SUCCESS)
 {
  return -2;
 }
 regKey.SetValue(DBName,"Database");
 regKey.SetValue("SQLSrv32.dll","Driver");
 regKey.SetValue(DBServer,"Server");
 regKey.SetValue(UID,"LastUser");
 regKey.m_hKey=HKEY_LOCAL_MACHINE;
 regKey.SetKeyValue("Software//ODBC//ODBC.INI//ODBC Data Sources","SQL Server",DSN);
 regKey.Close();
 return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值