none
プログラムショートカットの登録先はどのように選択される? RRS feed

  • 質問

  • Win7を、Administratorではなく、インストール時に設定したユーザーアカウント(管理者権限)で利用しています。
    アプリケーションなどをインストールすると、下記のいづれかに起動ショートカットが登録されます。
    C:\ProgramData\Microsoft\Windows\Start Menu\Programs\*
    C:\Users\ユーザ名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\*

    しかし、プログラムのリスト上ではその区別ができない。
    プログラムのリスト上で、フォルダーやショートカットを整理(入れ替え、まとめなど)をしても、どちらなのかが分らない。

    上記2箇所の差は何なのでしょうか。
    インストール時に指定できるのでしょうか。
    登録先により、「管理者として実行」の効果があるのでしょうか。

    ##あるソフトが管理者権限の影響を受けているらしく、上記が気になりました。
    →処理は済むが最終保存段階で"アクセス権無し"のメッセージで、結局キャンセルされる症状
    2009年11月8日 11:57

回答

  • > 上記2箇所の差は何なのでしょうか。

    たとえば、Visual Studio で作成したデフォルトのインストーラーだと、
    インストール時に「すべてのユーザー」「このユーザーのみ」を選択できます。
    「すべてのユーザー」を選ぶと「C:\ProgramData\…」にインストールされます。
    「このユーザーのみ」なら「C:\Users\…」です。

    > インストール時に指定できるのでしょうか。

    前述のとおり、Visual Studio で作成したデフォルトのインストーラーだと
    インストール時にラジオボタンで指定可能です。
    ただし、ラジオボタンを見えなくすることが可能で、
    デフォルトを「このユーザーのみ」から「すべてのユーザー」へ変更もできるので
    ユーザーに選択させないインストーラーを作ることも可能です。

    > 登録先により、「管理者として実行」の効果があるのでしょうか。

    少なくとも Vista では関係ありませんでした。
    Windows7 で UAC は変更されていますが、
    関係ないことに変わりはないという認識でいます。

    > ##あるソフトが管理者権限の影響を受けているらしく、上記が気になりました。
    > →処理は済むが最終保存段階で"アクセス権無し"のメッセージで、結局キャンセルされる症状

    ↑UAC を解除して試してみると切り分けできるかもしれません。
    • 編集済み anningo 2009年11月9日 2:14 改行修正
    • 回答としてマーク 仙川 2009年11月9日 4:28
    2009年11月9日 2:12

すべての返信

  • > 上記2箇所の差は何なのでしょうか。

    たとえば、Visual Studio で作成したデフォルトのインストーラーだと、
    インストール時に「すべてのユーザー」「このユーザーのみ」を選択できます。
    「すべてのユーザー」を選ぶと「C:\ProgramData\…」にインストールされます。
    「このユーザーのみ」なら「C:\Users\…」です。

    > インストール時に指定できるのでしょうか。

    前述のとおり、Visual Studio で作成したデフォルトのインストーラーだと
    インストール時にラジオボタンで指定可能です。
    ただし、ラジオボタンを見えなくすることが可能で、
    デフォルトを「このユーザーのみ」から「すべてのユーザー」へ変更もできるので
    ユーザーに選択させないインストーラーを作ることも可能です。

    > 登録先により、「管理者として実行」の効果があるのでしょうか。

    少なくとも Vista では関係ありませんでした。
    Windows7 で UAC は変更されていますが、
    関係ないことに変わりはないという認識でいます。

    > ##あるソフトが管理者権限の影響を受けているらしく、上記が気になりました。
    > →処理は済むが最終保存段階で"アクセス権無し"のメッセージで、結局キャンセルされる症状

    ↑UAC を解除して試してみると切り分けできるかもしれません。
    • 編集済み anningo 2009年11月9日 2:14 改行修正
    • 回答としてマーク 仙川 2009年11月9日 4:28
    2009年11月9日 2:12
  • ご回答ありがとうございました。
    そういえば、
    >インストール時に「すべてのユーザー」「このユーザーのみ」を選択できます。
    これがインストールプログラムで有ったり無かったりがありました。

    >> ##あるソフトが管理者権限の影響を受けているらしく、上記が気になりました。
    >> →処理は済むが最終保存段階で"アクセス権無し"のメッセージで、結局キャンセルされる症状
    > ↑UAC を解除して試してみると切り分けできるかもしれません。
    ちょっと試してみます。
    とりあえず、本件は終了とします。

    ##ログインユーザの管理者権限、インストール時や実行時の「管理者として実行する」、インストール時に「すべてのユーザー」を選択する場合など、管理者権限の適用範囲というか、そのプログラムのファイルアクセス権限の範囲(フォルダーのセキュリティ設定レベルとの関係?)、利用者への影響、などが、どうも整理できません。
    2009年11月9日 4:28
  • 自己レスで、追加情報です。
    プログラムショートカットの登録先は次に3分類できるようです。
    C:\ProgramData\Microsoft\Windows\Start Menu\Programs\*
    C:\Users\All Users\Microsoft\Windows\Start Menu\Programs\*
    C:\Users\ユーザ名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\*
    二番目をいじっていて、ふと一番目を見てみると、内容が完全に一致していました。
    そこにあるファイルの位置は上記述のとおりで実態は別のようですが、内容は同期されているようです。
    これらは直接ユーザが利用する領域ではないのに、何故同じ内容が2箇所に保存されるのか…
    なぞが深まるばかりで、それ以外のファイルの関連性についても興味はあるものの調査の気がうせました…
    …ユーザープロファイルのコピーも専用アプリ(1GB超)のダウンロードが必要という情報もあるし…
    だからどうだということではなく、あくまで情報提供です。
    2009年11月9日 12:09