• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 用VC程序來創建SQL Server ODBC數據源

    發表于:2007-07-14來源:作者:點擊數: 標簽:
    在發布與 數據庫 相關的軟件時,如果程序是用ODBC方式訪問數據庫,則需要在軟件安裝時創建ODBC數據源。 ODBC數據源的一些信息都存放在注冊表中。 HKEY_LOCAL_MECHINE\Software\ODBC\ODBCINST.INI 從此鍵下可得知系統是否已經安裝SQL Server驅動程序 HKEY_LOC
    在發布與數據庫相關的軟件時,如果程序是用ODBC方式訪問數據庫,則需要在軟件安裝時創建ODBC數據源。
    ODBC數據源的一些信息都存放在注冊表中。

    HKEY_LOCAL_MECHINE\Software\ODBC\ODBCINST.INI

    從此鍵下可得知系統是否已經安裝SQL Server驅動程序

    HKEY_LOCAL_MECHINE\Software\ODBC\ODBC.INI

    從此鍵下可得知系統已經建立的數據源.

    實現函數如下:

    //////////////////////////////////////////////////////////////////
    //Function:  MakeSQLServerODBCDSN
    //
    //Purpose: 配置SQL Server數據源
    //Parameters:
    //  [in]
    //   strDBServer: 數據庫所在主機
    //   strDBName:  數據庫名稱
    //   strDSN:   數據源名稱
    //   strUID:   登陸用戶
    //Return Value:
    //  -1: 沒有安裝SQL Server驅動程序
    //  -2: 其他錯誤
    //   0: 成功
    //////////////////////////////////////////////////////////////////
    int MakeSQLServerODBCDSN(LPCTSTR strDBServer,LPCTSTR strDBName,LPCTSTR strDSN,LPCTSTR strUID)
    {
    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+=strDSN;
    lRet=regKey.Create(HKEY_LOCAL_MACHINE,strKeyValueName);
    if(lRet!=ERROR_SUCCESS)
    {
      return -2;
    }
    regKey.SetValue(strDBName,"Database");
    regKey.SetValue("SQLSrv32.dll","Driver");
    regKey.SetValue(strDBServer,"Server");
    regKey.SetValue(strUID,"LastUser");
    regKey.m_hKey=HKEY_LOCAL_MACHINE;
    regKey.SetKeyValue("Software\\ODBC\\ODBC.INI\\ODBC Data Sources","SQL Server",strDSN);
    regKey.Close();
    return 0;
    }

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>