SQLBrowseConnect を使用してローカル SQL インスタンスを列挙しようとしています。一般的に言えば、これは正常に機能していますが、SQLExpress インスタンスが検出されないという結果になるセットアップが 1 つあります。問題のコードは次のとおりです。
SQLSetConnectAttr(hSQLHdbc,
SQL_COPT_SS_BROWSE_SERVER,
_T("(local)"),
SQL_NTS);
CString inputParam = _T("Driver={SQL Server}");
SQLBrowseConnect(hSQLHdbc,
inputParam,
SQL_NTS,
szConnStrOut,
MAX_RET_LENGTH,
&sConnStrOut);
失敗したインスタンスでは、コードはドメイン コントローラーで実行されています。欠落している SQL のローカル インスタンスは、SQLExpress インスタンス (バージョン 9) です。ただし、不可解なことは、sqlcmd -L を実行すると、欠落しているインスタンスが問題なく表示されることです。
私は本当にばかげたことを見逃していますか?他のシステムやセットアップでは問題がないことを覚えておいてください。