アプリケーションが直接リンクされたかどうかをテストするには、アプリケーションでSQLGetInfoをコールし、SQLHDBC
(データ・ストア接続ハンドル)のドライバ・リリースを確認して、SQLAllocConnectから返されたSQLHDBC
と比較します。次に例を示します。
RetCode = SQLDriverConnect(hdbc,NULL,szConnString,
SQL_NTS,szConnout,255,&cbConnOut,SQL_DRIVER_NOPROMPT);
rc = SQLGetInfo(hdbc, SQL_DRIVER_HDBC, &drhdbc,
sizeof (drhdbc), &drhdbclen);
if (drhdbc != NULL && drhdbc != hdbc) {
/* Linked with driver manager */
}
else {
/* Directly linked with TimesTen driver */
}
直接リンクされているアプリケーションの場合、SQLGetInfoをコールすると変更されていないSQLHDBC
が返されます。ドライバ・マネージャを使用するアプリケーションの場合、返されるSQLHDBC
は渡されるSQLHDBC
と異なります。