これと同じ問題が発生しました。オブジェクトエクスプローラーを使用してリモートサーバーにアクセスすると、SSMSが無期限にハングします。 Windowsシステムイベントログには、DCOMエラー10009が表示されます(「DCOMは、構成されたプロトコルのいずれかを使用してコンピューターMACHINE_NAMEと通信できませんでした。」)。
解決策は、プロファイルからMRU履歴とその他の設定をクリアすることでした。 そのためには:
- SSMS2012の開いているインスタンスをすべて閉じます
- エクスプローラーで、「%AppData%\ Microsoft \ SQLServerManagementStudio」を開きます
- 「11.0」フォルダの名前を「11.0.old」などの別の名前に変更します
- Open SSMS 2012
MRUリストがクリアされていることがわかります。これで、クレデンシャルを再入力して、通常どおりSSMSを使用できるようになります。
すべてが機能する場合は、名前を変更したフォルダーを削除できます。それ以外の場合は、作成された新しい「11.0」フォルダーを削除し、元のフォルダーの名前を「11.0」に戻します。
この問題を引き起こしているのが実際にMRUリストなのか、それとも他のプロファイルデータなのかはわかりません。
SSMSがポート135を介してSQLServerにDCOM接続を確立しようとしていることを発見できました(おそらくSSIS、T-SQLデバッグなど)。ファイアウォールはポート135をブロックするように構成されています。ファイアウォールでポートを開くことにより、SSMSを使用できました(したがって、ローカルデータベースに対しては機能しましたが、リモートデータベースに対しては機能しませんでした)。残念ながら、開いているポート135は多くの攻撃への誘いであるため、それは私たちにとって実用的な解決策ではありませんでした。