ここでは、指定したフォルダをエクスプローラで開いて表示する方法を紹介します。なおここで紹介しているエクスプローラの機能は、OSのバージョンによっては違う動作になる可能性もあります。最後に動作を確認したOSは、Windows 8.1です。
「ファイルを関連付けられたソフトで開く」と同じように、フォルダも関連付けで開くことができます。フォルダは通常エクスプローラに関連付けられていますので、関連付けが変更されていない限り、エクスプローラでフォルダが開きます。
下の例では、関連付けでフォルダ「C:\My Documents\My Pictures」を開いています。
'フォルダ"C:\My Documents\My Pictures"を開く
System.Diagnostics.Process.Start("C:\My Documents\My Pictures")
//フォルダ"C:\My Documents\My Pictures"を開く
System.Diagnostics.Process.Start(@"C:\My Documents\My Pictures");
通常エクスプローラのファイル名は「EXPLORER.EXE」で、パスの通ったフォルダ(Windowsフォルダ)に存在します。よって、直接「EXPLORER.EXE」を実行すれば、エクスプローラが起動します。この時、フォルダのパスをコマンドライン引数で渡せば、そのフォルダをエクスプローラで開くことができます。
'エクスプローラでフォルダ"C:\My Documents\My Pictures"を開く
System.Diagnostics.Process.Start( _
"EXPLORER.EXE", "C:\My Documents\My Pictures")
//エクスプローラでフォルダ"C:\My Documents\My Pictures"を開く
System.Diagnostics.Process.Start(
"EXPLORER.EXE", @"C:\My Documents\My Pictures");
オプション「/select」を指定してエクスプローラを起動することにより、ファイルやフォルダが選択された状態でフォルダを開くことができます。
以下の例では、「C:\My Documents\My Pictures\サンプル.jpg」が選択された状態でエクスプローラが起動するようにしています。
'オプションに"/select"を指定して開く
System.Diagnostics.Process.Start( _
"EXPLORER.EXE", "/select,""C:\My Documents\My Pictures\サンプル.jpg""")
//オプションに"/select"を指定して開く
System.Diagnostics.Process.Start(
"EXPLORER.EXE", @"/select,""C:\My Documents\My Pictures\サンプル.jpg""");
エクスプローラが開いた時、通常ルートフォルダは「PC」や「デスクトップ」ですが、これをオプション「/root」で変更することができます。
次の例では、ルートを「C:\My Documents\My Pictures」としてエクスプローラで表示しています。
'オプションに"/root"を指定して開く
System.Diagnostics.Process.Start( _
"EXPLORER.EXE", "/e,/root,""C:\My Documents\My Pictures""")
//オプションに"/root"を指定して開く
System.Diagnostics.Process.Start(
"EXPLORER.EXE", @"/e,/root,""C:\My Documents\My Pictures""");
これは、Windows XP以前でのみ有効です。Windows Vista以降では、無視されます。
普通にエクスプローラを開くと、左側にフォルダツリーが付かないマイコンピュータ式で表示されます。必ずマイコンピュータ式で表示するには、オプション「/n」を指定して、エクスプローラを起動します。
'オプションに"/n"を指定して開く
System.Diagnostics.Process.Start( _
"EXPLORER.EXE", "/n,""C:\My Documents\My Pictures""")
//オプションに"/n"を指定して開く
System.Diagnostics.Process.Start(
"EXPLORER.EXE", @"/n,""C:\My Documents\My Pictures""");
これも、Windows XP以前でのみ有効です。
左側にフォルダツリーが付いたエクスプローラ式でフォルダを開くには、動詞に「explore」を指定するか、オプション「/e」を指定します。
以下に、動詞に「explore」を指定して開くコードと、オプション「/e」を指定して開くコードを示します。
'動詞に"explore"を指定して開く Dim psi As New System.Diagnostics.ProcessStartInfo() psi.FileName = "C:\My Documents\My Pictures" psi.Verb = "explore" System.Diagnostics.Process.Start(psi) 'オプションに"/e"を指定して開く System.Diagnostics.Process.Start( _ "EXPLORER.EXE", "/e,""C:\My Documents\My Pictures""")
//動詞に"explore"を指定して開く System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(); psi.FileName = @"C:\My Documents\My Pictures"; psi.Verb = "explore"; System.Diagnostics.Process.Start(psi); //オプションに"/e"を指定して開く System.Diagnostics.Process.Start( "EXPLORER.EXE", @"/e,""C:\My Documents\My Pictures""");
マイコンピュータやデスクトップ、コントロールパネルなど一部の特殊なフォルダは、パスの代わりにCLSIDを使用することによって、エクスプローラで開くことができます。
例えばマイコンピュータのCLSIDは「{20D04FE0-3AEA-1069-A2D8-08002B30309D}」ですので、マイコンピュータをエクスプローラで開くには、
explorer.exe /e,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
または
explorer.exe shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
というコマンドを実行します(一部のフォルダは、「shell:」でしか開くことができないようです)。
さらにWindows Vistaからは、Shell Commandを使用してフォルダを開くこともできます。マイコンピュータの場合は、
explorer.exe shell:MyComputerFolder
というコマンドで開くことができます。
この方法で開くことができるフォルダは、かなりの数あります。CLSIDのリストは「CLSID Key (GUID) Shortcuts List for Windows 8」、Shell Commandのリストは「Shell Commands in Windows 8」が参考になります。
その内幾つかを以下に紹介します。なおコントロールパネル関連のフォルダや機能は「コントロールパネルを開く」で紹介していますので、そちらをご覧ください。
フォルダ | CLSID | Shell Command |
---|---|---|
デスクトップ | Desktop | |
お気に入り | {323CA680-C24D-4099-B94D-446DD2D7249E} | Favorites |
PC コンピューター マイコンピュータ | {20D04FE0-3AEA-1069-A2D8-08002B30309D} | MyComputerFolder |
PC\ダウンロード | {20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{374DE290-123F-4565-9164-39C4925E467B} | downloads |
PC\デスクトップ | {20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{B4BFCC3A-DB2C-424C-B029-7FE99A87C641} | ThisPCDesktopFolder |
PC\ドキュメント | {20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0} | Personal |
マイドキュメント | {450D8FBA-AD25-11D0-98A8-0800361B1103} | |
PC\ピクチャ | {20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{3ADD1653-EB32-4CB0-BBD7-DFA0ABB5ACCA} | My Pictures |
PC\ビデオ | {20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A0953C92-50DC-43BF-BE83-3742FED03C9C} | My Video |
PC\ミュージック | {20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{1CF1260C-4DD0-4EBB-811F-33C572699FDE} | My Music |
ライブラリ | {031E4825-7B94-4dc3-B131-E946B44C8DD5} | Libraries |
ライブラリ\ドキュメント | {031E4825-7B94-4DC3-B131-E946B44C8DD5}\{7B0DB17D-9CD2-4A93-9733-46CC89022E7C} | DocumentsLibrary |
ライブラリ\ミュージック | {031E4825-7B94-4DC3-B131-E946B44C8DD5}\{2112AB0A-C86A-4FFE-A368-0DE96E47012E} | MusicLibrary |
ライブラリ\ピクチャ | {031E4825-7B94-4DC3-B131-E946B44C8DD5}\{A990AE9F-A03B-4E80-94BC-9912D7504104} | PicturesLibrary |
ライブラリ\ビデオ | {031E4825-7B94-4DC3-B131-E946B44C8DD5}\{491E922F-5643-4AF4-A7EB-4E7A138D8174} | VideosLibrary |
パブリック | {4336A54D-038B-4685-AB02-99BB52D3FB8B} | Public |
パブリックデスクトップ | Common Desktop | |
パブリックのダウンロード | CommonDownloads | |
パブリックのドキュメント | Common Documents | |
パブリックのピクチャ | CommonPictures | |
パブリックのビデオ | CommonVideo | |
パブリックのミュージック | CommonMusic | |
ホームグループ | {B4FB3F98-C1EA-428d-A78A-D1F5659CBA93} | HomeGroupFolder |
ホームグループ\(現在のユーザー) | HomeGroupCurrentUserFolder | |
ユーザー | UserProfiles | |
ユーザー\(現在のユーザー) | Profile | |
ユーザーファイルフォルダー ユーザーホーム | {59031A47-3F72-44A7-89C5-5595FE6B30EE} | UsersFilesFolder |
(現在のユーザー)\リンク | {59031A47-3F72-44A7-89C5-5595FE6B30EE}\{BFB9D5E0-C6A9-404C-B2B2-AE6DB6AF4968} | Links |
(現在のユーザー)\検索 | {59031A47-3F72-44A7-89C5-5595FE6B30EE}\{7D1D3A04-DEBB-4115-95CF-2F29DA2920DA} | Searches |
最近表示した場所 | {22877A6D-37A1-461A-91B0-DBDA5AAEBC99} | |
最近使った項目 | Recent | |
ネットワーク | {F02C1A0D-BE21-4350-88B0-7367FC96EF3C} | NetworkPlacesFolder |
ごみ箱 | {645FF040-5081-101B-9F08-00AA002F954E} | RecycleBinFolder |
検索結果 | {9343812E-1C37-4A49-A12E-4B2D810D956B} | SearchHomeFolder |
Windowsディレクトリ | Windows | |
Windowsシステムディレクトリ | System | |
Program Files | ProgramFiles | |
コントロールパネル | {26EE0668-A00A-44D7-9371-BEB064C98683} |