SQLSetConfigMode 関数

準拠
導入されたバージョン: ODBC 3.0

まとめ
SQLSetConfigMode は、DSN 値をリストするOdbc.ini エントリがシステム情報内のどこにあるかを示す構成モードを設定します。

構文

  
BOOL SQLSetConfigMode(  
     UWORD     wConfigMode);  

引数

wConfigMode
[入力]インストーラー構成モード (「コメント」を参照)。 wConfigMode の値は次のとおりです。

ODBC_USER_DSN

ODBC_SYSTEM_DSN

ODBC_BOTH_DSN

戻り値

関数は成功した場合は TRUE を返し、失敗した場合は FALSE を返します。

診断

SQLSetConfigMode が FALSE を返す場合は、SQLInstallerError を呼び出すことによって、関連付けられた *pfErrorCode 値を取得できます。 次の表に、SQLInstallerError によって返される *pfErrorCode 値の一覧を示し、この関数のコンテキストでそれぞれについて説明します。

*pfErrorCode エラー 説明
ODBC_ERROR_INVALID_PARAM_SEQUENCE パラメーター シーケンスが無効です wConfigMode 引数に、ODBC_USER_DSN、ODBC_SYSTEM_DSN、またはODBC_BOTH_DSNが含まれていませんでした。

説明

この関数は、DSN 値をリストするOdbc.ini項目がシステム情報内のどこにあるかを設定するために使用されます。 wConfigMode がODBC_USER_DSNの場合、DSN はユーザー DSN であり、関数は HKEY_CURRENT_USER のOdbc.ini エントリから読み取ります。 ODBC_SYSTEM_DSNされている場合、DSN はシステム DSN であり、関数は HKEY_LOCAL_MACHINE のOdbc.ini エントリから読み取ります。 ODBC_BOTH_DSNの場合は、HKEY_CURRENT_USERが試行され、失敗した場合は、HKEY_LOCAL_MACHINEが使用されます。

この関数は 、SQLCreateDataSourceSQLDriverConnect には影響しません。 構成モードは、ドライバーが SQLGetPrivateProfileString を呼び出してレジストリから読み取るか、 SQLWritePrivateProfileString を呼び出してレジストリに書き込むときに設定する必要があります。 SQLGetPrivateProfileStringSQLWritePrivateProfileString の呼び出しでは、構成モードを使用して、レジストリのどの部分を操作するかを確認します。

注意事項

SQLSetConfigMode は、必要な場合にのみ呼び出す必要があります。モードが正しく設定されていない場合は、ODBC インストーラーが正しく機能しない可能性があります。

SQLSetConfigMode は、構成モードのレジストリを直接変更します。 これは、 SQLConfigDataSource の呼び出しによって構成モードを変更するプロセスとは別です。 SQLConfigDataSource を呼び出すと、DSN を変更するときにユーザーとシステムの DSN を区別するように構成モードが設定されます。 SQLConfigDataSource が返される前に、構成モードが BOTHDSN にリセットされます。

対象 解決方法については、
データ ソースの作成 SQLCreateDataSource
接続文字列またはダイアログ ボックスを使用したデータ ソースへの接続 SQLDriverConnect
構成モードの取得 SQLGetConfigMode