-1
インストーラをビルドするためにWIXを使用しています。今私は自分のデータベースが他のセッションによって接続されているかどうかを検出したいと思います。WIXでデータベースへのSQL Server接続を確認する方法
誰でも私にWIXを使ってそれを行う方法を教えてもらえますか? C#を使用するのは簡単ですが、事前に感謝してWIXを使用して行う方法はわかりません。
インストーラをビルドするためにWIXを使用しています。今私は自分のデータベースが他のセッションによって接続されているかどうかを検出したいと思います。WIXでデータベースへのSQL Server接続を確認する方法
誰でも私にWIXを使ってそれを行う方法を教えてもらえますか? C#を使用するのは簡単ですが、事前に感謝してWIXを使用して行う方法はわかりません。
私はカスタムアクションを使用して解決しました。以下はコードの一部ですが、他人を助けることを願っています。
<control ...>
<publish Event="SpawnDialgo" Value="DBInUseDlg">DBINUSE = "Y"</publish>
</control>
<Dialog Id="DBInuseDlg" ....>
<control>....
</Dialog>
:WXSファイルで
[CustomAction]
public static ActionResult DoCheck(Session ssion)
{
...
if (CheckDBInUse(...))
{
...
session["DBINUSE"] = "Y"; // Set flag
...
}
}
private static bool CheckDBInUse(...)
{
// SELECT host_process_id FROM SYS.DM_EXEC_SESSIONS WHERE DATABASE_ID = DB_ID('{0}')"
// do check
}