shell

shell: URL scheme

[1]M$URIWindoze explorer の機能 (特殊フォルダなど) の URI scheme

[4]

shell:Administrative Tools管理ツールフォルダ (スタートメニュー)
shell:AppDataApplicationData フォルダ
shell:Common Administrative Tools管理ツール・フォルダ (全利用者)
shell:Common AppDataApplication Data フォルダ (全利用者)
shell:Common Desktopデスクトップ・フォルダ (全利用者)
shell:Common Documents
shell:Common Favoritesお気に入り (全利用者)
shell:Common Programsプログラム・フォルダ (スタートメニュー・全利用者)
shell:Common Startupスタートアップ・フォルダ (全利用者)
shell:Common Templates雛形 (ShellNew) フォルダ (全利用者)
shell:CommonProgramFiles\Program Files\Common Files
shell:ConnectionsFolderネットワーク接続 (仮想) フォルダ
shell:ControlPanelFolderコントロールパネル (仮想) フォルダ
shell:CookiesCookie 保存フォルダ
shell:DesktopFolderデスクトップ (仮想) フォルダ
shell:DriveFolderマイコンピュータ (仮想) フォルダ
shell:Favoritesお気に入りフォルダ
shell:Fontsフォント・フォルダ
shell:HistoryIE履歴保存フォルダ
shell:InternetFolderIE
shell:Local AppDataLocalSettings の Application Data
shell:My Picturesマイピクチャ・フォルダ
shell:NetHoodNetHood フォルダ
shell:NetworkFolderマイネットワーク (仮想) フォルダ
shell:Personalマイドキュメント・フォルダ
shell:PrintHoodPrintHood フォルダ
shell:PrintersFolderプリンタとFAX (仮想) フォルダ
shell:Profile個人設定フォルダ
shell:ProgramFilesProgramFiles フォルダ
shell:Programsプログラム・フォルダ (スタートメニュー)
shell:Recent最近使ったファイル履歴フォルダ
shell:RecycleBinFolderごみ箱 (仮想) フォルダ
shell:SendTo送るフォルダ
shell:Startupスタートアップ・フォルダ (全利用者)
shell:Systemシステム・フォルダ (System32)
shell:SystemX86システム・フォルダ (System32)
shell:Templates雛形 (ShellNew) フォルダ
shell:WindowsWindows フォルダ

[2] shell:ConnectionsFolderWin2k で実装が確認されています。その他は未確認。 (Win2k をお持ちの方、確かめてみてください。)

表のうち、 shell:Common Documents 以外はすべて WinXP (+ WinIE6) で確認しました。

shell:Common Documents>>3 に載っているのですが、 Win2k では本当にあったのでしょうか? (WinXP でも確認したと書かれていますが。。。)

[3] 【コラム】Windows2000スマートチューニング 第57回 執筆=阿久津良和 「Shell:」を使って特殊フォルダを一発で開く(MYCOM PC WEB - Column Square) <http://web.archive.org/web/20030413155626/http://pcweb.mycom.co.jp/column/win2k/win2k057.html>

[5] WinXP (+ WinIE6) で確認した限りでは、大文字・小文字は区別されません。 URI符号化は使えません。 (間隔が使われているのに!) 間隔の有無が無視されないかなとちょっと期待してみましたが、無駄でした。 間隔は正確に表の通りでないといけません。

もしかしたら文字列と CLSID の対応とかがレジストリのどっかにあるんじゃないかなあという気もしていますけど、探す気力がないです。。。

[6] WinMe でも使えるそうです。 WinIE 5.0 or 5.5 辺りで実装されたのかな? Win98 ではどうなのだろう?

[7] なんと、 shell:windows\web\tip.htm のようにすると subfolder / file を指せるようです。 (\/ では不可。 .. などを含めるのも不可。) 不存在ファイルを指定すると、 WinIE 6 ではエラーが出ますが、 Mozilla 類では無限に開こうとし続ける不具合があるようです。

Bug 250180 - Shell: protocol allows access to local files and can lead to a DOS <http://bugzilla.mozilla.org/show_bug.cgi?id=250180>

この URI scheme の機能が一般のウェブ頁から aiframe で使えてしまうのは危険で、脆弱性とみなされるようです。 (実際ブラクラだから仕方がない。)

shell: プロトコルのセキュリティ問題について Mozilla ユーザが知っておくべきこと <http://jt.mozilla.gr.jp/security/shell.html> (名無しさん 2004-07-10 01:39:28 +00:00)

[8] >>7 Mozilla は Windows の shell: URL handler に丸投げしているだけでしょうから、同様のことをしているすべてのプログラム (ブラウザに限らず) が多かれ少なかれ同じ問題を抱えているといえるはずです。 (Windows の URL handler 登録機能はこういう安全上の点でやばい。) shell: の場合は拡張子の関連付けによって任意のプログラムを実行できますし、 Bugzilla に引用された Full-Disclosure の記事によれば buffer overflow も起こり得るそうで。 (名無しさん 2004-07-10 01:46:27 +00:00)