エクスプローラービューを変更することは可能ですかspecific folder
C:\
?大きなアイコンVBA を使用していますか? このプログラムを使用してRegistryChangesView
Windows レジストリの変更をキャプチャし、次のデータを取得しました:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU\0\0]
"MRUListEx"=hex(3):00,00,00,00,01,00,00,00,02,00,00,00,FF,FF,FF,FF
後から適用しましたが、まったく効果がありません (フォルダー ビューはまだリストされています)。Windows
API で実行できると思います (詳しくありません)。
事前に、どんな助けでも歓迎します。
答え1
キーBagMRU
は保存されたビューにインデックスを付け、完全修飾パスを番号付きプロパティ バッグに関連付け、ビュー設定を隣接するキーのサブキーに保存しますBags
。
しかし、キーの番号付け/名前付けは固定ではなく、フォルダが最初に表示されたときに依存します。ユーザーがフォルダを冒険者、バッグはないでしょう。要するに、これはこれを試みる方法ではありません。
フォルダの保存されたビューを操作するには、フォルダを冒険者さまざまなCOMオブジェクトを使用してビューにアクセスし、変更するには、shell.application
。 でパワーシェル次を使用してインスタンスを作成します。
$Shell = New-Object -ComObject shell.application
使用Windows
オープンを取得する方法冒険者ウィンドウ。冒険者ウィンドウには次のプロパティがあります。
Application : System.__ComObject
Parent : System.__ComObject
Container :
Document : System.__ComObject
TopLevelContainer : True
Type :
Left : 0
Top : 0
Width : 1462
Height : 625
LocationName : Windows (C:)
LocationURL : file:///C:/
Busy : False
Name : File Explorer
HWND : 78776658
FullName : C:\WINDOWS\explorer.exe
Path : C:\WINDOWS\
Visible : True
StatusBar : False
StatusText :
ToolBar : 1
MenuBar : False
FullScreen : False
ReadyState : 4
Offline : False
Silent : False
RegisterAsBrowser : False
RegisterAsDropTarget : True
TheaterMode : False
AddressBar : True
Resizable : True
プロパティDocument
自体は COM オブジェクトです。このオブジェクトを通じて、フォルダー ビューの側面を特定get
できます。set
Application : System.__ComObject
Parent :
Folder : System.__ComObject
FocusedItem : System.__ComObject
Script :
ViewOptions : 139
CurrentViewMode : 8
GroupBy : System.Null
FolderFlags : 1090519041
SortColumns : prop:System.ItemNameDisplay;
IconSize : 32
CurrentVIewMode
および はIconSize
変更する値です。Mode
次の表の列の値を使用します。
Name LVM Mode Vid IconSize
---- --- ---- --- --------
Details 1 4 {137E7700-3573-11CF-AE69-08002B2E1262} 16
Tiles 2 6 {65F125E5-7BE1-4810-BA9D-D271C8432CE3} 48
SmIcons 3 1 {089000C0-3573-11CF-AE69-08002B2E1262} 16..31
Icons(M-XL) 3 1 {0057D0E0-3573-11CF-AE69-08002B2E1262} 33..256
List 4 3 {0E1FA5E0-3573-11CF-AE69-08002B2E1262} 16
Content 5 8 {30C2C434-0889-4C8D-985D-A9F71830B0A9} 32
以下にサンプルコードを示します。
$Shell = New-Object -ComObject shell.application
Function WaitFor-NewWindow ( $CurrentCount )
{
Do { Sleep -m 50 } Until ( $Shell.Windows().Count -gt $CurrentCount )
}
Function Get-TargetWindow ( $Path )
{
$OpenWindows = @( $Shell.Windows() )
If ( $TargetWindow = $OpenWindows | ? { $_.Document.Folder.Self.Path -like $Path } )
{
$TargetWindow
}
Else
{
$Shell.Open( $Target )
WaitFor-NewWindow $OpenWindows.Count
@( $Shell.Windows() ) | ? HWND -notIn $OpenWindows.HWND
}
}
$Target = 'C:\'
$TargetWindow = Get-TargetWindow $Target
$TargetWindow.Document.CurrentViewMode = 1
$TargetWindow.Document.IconSize = 96
$TargetWindow.Quit()