プログラムでアウトオブブラウザーシルバーライトアプリケーションをアンインストールします

StackOverflow https://stackoverflow.com/questions/2735621

質問

ContextMenuを使用する代わりに(コンテキストメニューを交換する場合など)、Browser Out-Of-Browser Silverlight 4アプリケーションをプログラムでアンインストールする方法は?

編集

で見つけました 「関係するブラウザなしでSilverlightアプリケーションのインストール」 コマンドラインを呼び出してアンインストールする方法:

「%プログラムファイル% Microsoft Silverlight sllauncher.exe "/uninstall -origin:silverlight.net/content/samples/apps/>

これは以下を使用できます。-

 dynamic cmd = AutomationFactory.CreateObject("WScript.Shell");
 cmd.Run(run, 1, true);

より良い解決策はありますか?

役に立ちましたか?

解決

マイクが言うように、これはCom Interopに頼らずには不可能ではないことを確信しています。

1)アンインストールオプションを削除すると、多くのユーザーを悩ませることは間違いありません。 2)新しいコンテキストメニューを実装しようとしていると言いますか?これがLOBアプリケーションでない限り、多くのユーザーが私にとって貧弱なHCIであるWebアプリのコンテキストメニューにアクセスすることに慣れていないため、これに注意するでしょう。 LOBアプリケーションの場合、プログラムを追加/削除することはOKソリューションになりますか?

他のヒント

これをプログラムで行うことができるかどうかはわかりません。

1つのオプションは、ユーザーに追加/削除プログラムを使用して削除することです。

もう1つは、サイレントインストールオプションを使用して削除することです(リンク - http://mtaulty.com/communityserver/blogs/mike_taultys_blog/archive/2010/03/24/silverlight-4-rc-and-silent-installation.aspx )しかし、それにはcom Interopコールが含まれます。

マイク。

あなたが言及した解決策は、私がそれをすることを知っている唯一の方法です。それは素敵なタッチパットです Application.Current.MainWindow.Close(); ただし、アンインストールを行った後もアプリケーションが実行されているためです。

マーク

これは答えではありませんが、あなたの問題に関連しています。 Silverlightの公式ウィッシュリストには、かなり前にこれを行う機能を追加しました。幸いなことに、かなり少数のユーザーが同意します。十分な票があれば、シルバーライトの将来のバージョンに表示されることを願っています。

http://dotnet.uservoice.com/forums/4325-silverlight-feature-suggestions/suggestions/410706-greater-contol-over-installation in-oob

ここで私の解決策をチェックしてください: Silverlightをブラウザアプリケーションからプログラムでアンインストールできません Silverlightアプリケーションによって実行されているコンソールアプリのITコードを使用しました。シルバーライトは、ディレクトリの1つにリソースとしてEXEを抽出し、次のようなものを使用して実行しました。

using (dynamic shell = AutomationFactory.CreateObject("WScript.Shell"))
{
     shell.Run(@"C:\Users\yourusername\AppData\update.exe xapNameToUninstall");
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top