質問: VBでのプログラム作成を目的として、エクスプローラー上部のアドレスバーにshell:appsfolderと入力した時に出力されるアプリケーションと同じファイル名を全て絶対パスで取得したいのですがどのように記述すればよいかわかりません。 望ましいと思われる記述例があればご教示下さい。 よろしくお願いいたします。
回答: Windowsにおいてディレクトリとフォルダは明確に区別されます。全てのディレクトリはフォルダとなりますが、その逆は成り立ちません。 分かりやすい例で言うと`コントロールパネル`は対応するディレクトリが存在するわけではなくExplorer上の仮想的な名前空間です。`ゴミ箱`はドライブ毎の特定ディレクトリを1つに集約して表示しています。また`デスクトップ`は対応するディレクトリはあるものの`ゴミ箱`が追加されていたりということもあります。 それを踏まえて質問の `shell:appsfolder` は対応するディレクトリを知るべきではありません。これはWindowsが認識しているアプリケーションを仮想的に一覧しているだけですから、正規の手順でアプリケーションをインストールすれば、 `shell:appsfolder` にも自動的に追加されます。