何となく Blog by Jitta
Microsoft .NET 考

目次

Blog 利用状況
  • 投稿数 - 761
  • 記事 - 18
  • コメント - 37042
  • トラックバック - 222
ニュース
  • IE7以前では、表示がおかしい。div の解釈に問題があるようだ。
    IE8の場合は、「互換」表示を OFF にしてください。
  • 検索エンジンで来られた方へ:
    お望みの情報は見つかりましたか? よろしければ、コメント欄にどのような情報を探していたのか、ご記入ください。
It's ME!
  • はなおか じった
  • 世界遺産の近くに住んでます。
  • Microsoft MVP for Visual Developer ASP/ASP.NET 10, 2004 - 9, 2011
広告

記事カテゴリ

書庫

日記カテゴリ

ギャラリ

その他

わんくま同盟

同郷

 

この内容は、ベータ版を元にしています。製品版では変更になっている可能性があります。

Windows Vista あるいは、UAC 環境における、行儀の良いアプリケーションのインストールにおける、ベスト・プラクティクスは次の通りです。

とっちゃん's Blog の、WindowsInstaller カテゴリや、Best Practice Guide 参考訳 カテゴリも参照。

「アプリケーションを設計する」というタイトルなのに、インストールの話しか出ない謎...

  1. セットアップ スクリプトのために、Windows インストーラを使用します。

    以降に述べる助言の多くが、すでに MSI エンジンに統合されています。開発者は、他のインストール エンジン、あるいはゼロから作り上げるようなリスクを冒すことがあります。MSI は成熟した、検証済みの技術です。

  2. バージョン管理されたファイルを使ってください。そしてインストール先のファイルをダウン グレードしないでください。ファイルバージョン対応は、セットアップが完了したとき、最終のインストレーション状態が正しいことを保証します。ファイルバージョンなしの場合、 インストールが多くの異なったインストールシナリオにおいて適切に機能することを保証するために、若干の特殊な操作が必要とされるでしょう。同様に、バージョン管理されるファイルをインストールするとき、バージョン、特に共用ファイルをダウングレードしないでください。バージョンをダウングレードすることは、特定のアプリケーションのために必要かもしれません。しかしそれは他のアプリケーションに対して、しばしば問題を起こします。

  3. アプリケーションは\Programs files\ ディレクトリにインストールされるべきです。ユーザー毎の構成情報が \Users\(username)\AppData ディレクトリにストアされるべきです。ユーザーデータ、テンプレート、アプリケーションによって作成されたファイルはすべて \Users\(username) サブディレクトリに、適切な位置を持っています。これまで強制されなかったけれども、多くのユーザーが完全な管理特権でプログラムを実行するでしょうから、情報を正しい場所に置かないアプリケーションは失敗する可能性が高いです。仮想化のサポートが終了すると、これは特に深刻です。

  4. 共有コンポーネントをインストールするとき、一貫したフォルダー位置を使ってください。 共有コンポーネントを管理することは問題であることがあり、そして可能ならば、避るべきです。一貫した共有コンポーネント インストールを行わない開発者は、古いバージョンのコンポーネント オブジェクト モデル(COM)を登録することになるでしょう。共有コンポーネントを修正することで、既存のアプリケーションを失敗させるなど、他の問題を生じさせます。この問題を扱うひとつの方法は、アプリケーションを Microsoft.NET あるいは Win32 のようなバージョン管理されたアセンブリで作ることです。

  5. インストールが失敗した場合は、セットアップをロールバックしてください。部分的にインストールされたソフトウェアは、奇妙な、そして意外な方法で失敗するなど、未熟なユーザ エクスペリエンスへ導きます。MSI はこのロールバック機能をサポートします。

  6. ユーザーのプロフィールにアプリケーションショートカットをインストールしないでください。Windows における周知の場所に、アプリケーション アイコンを加えることは誘惑的であるかもしれません。しかし、ユーザにマシンのコントロールに対する喪失感を与える結果になります。また、ユーザにマシンを望ましいルック アンド フィールに戻すために、手作業でこれらのショートカットを削除することを強います。開発者がデスクトップにアイコンを加えることを望む場合は、インストール中に、ユーザに許可を求めてください。Windows Vista は広いスタートメニューをくまなく渡り歩くことを避けるために、アプリケーション インストール後と、最近使われたアプリケーション リストを発見しやすくします。

  7. ユーザ ログオンにおいて自動的にバックグラウンド アプリケーションを開始することを避けてください。インストール中にスタートアップ グループあるいは「Run」キーにプログラムを加えることは可能ですが、それはシステムにオーバーヘッドを加えます。長い間に、ユーザのシステム パフォーマンスは徐々に劣化するでしょう。アプリケーションがバックグラウンド タスクから利益を得る場合は、それがユーザ設定可能であるようにしてください。同じく、HLKM の Run キーに起動タスクを加えることは、限定されたユーザー アカウントでは将来修正が出来なくなるかもしれません。ユーザが、ログイン時にアプリケーションが起動することを望む場合は、情報を HKEY_CURRENT_USER(HKCU)の Run キーにストアしてください。

  8. クリーンなアンインストールロジックに従ってください。ユーザーはディスク・スペースを空けるためだけではなく、マシンをアプリケーションがインストールされる前の状態に戻すために、をアンインストールするかもしれません。アプリケーションのアンインストール プロセスは正確に、そして完全にアプリケーションを取り除くべきです。MSI は次の規則をデフォルトとします。

    • すべての共有されないアプリケーションファイルとフォルダー。

    • 参照カウント(refcount)がゼロに達する、共有アプリケーションファイル。

    • 他のプログラムによって共有されることがない、レジストリ項目。

    • アプリケーションがインストールのときに作成したスタートメニューからのすべてのショートカット。

    • ユーザ プリファレンスがユーザ データであると考えられ、そして残されるかもしれません、しかし完全にクリーンな除去をする選択が含まれるべきです。

    • (MSI を使っていない場合は)アンインストーラ自身。

アプリケーションのアンインストール後に、ユーザは再インストールすることが可能であるべきです。

投稿日時 : 2006年6月13日 19:30
コメント
No comments posted yet.
タイトル
名前
Url
コメント