Are you comfortable copying & pasting code into a PowerShell window?
If this command retruns a count of 5000, saved views have maxed out & things will be flakey.
Code:
((gp "HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU").Nodeslots).count
If you've hit 5000, delete the BagMRU
& Bags
keys:
Code:
sl 'HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell'
'BagMRU', 'Bags' | Remove-Item -Recurse
Verify that you have set defaults for all the FolderTypes:
Code:
Function Get-CustomFolderTypes {
$Defaults = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Defaults'
$FT = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes'
If ( ! ( $global:FT_Lookup )) { # Available for interactive use
$sbBegin = {$hash = @{ # for duration of PowerShell session
'{25CC242B-9A7C-4F51-80E0-7A2928FEBE42}' = 'Network'
'{D6D9E004-CD87-442B-9D57-5E0AEB4F6F72}' = 'Recycle Bin'
}}
$global:FT_Lookup = gci $FT | ForEach $sbBegin {
$hash.Add( $_.PSChildName , ($_).GetValue('CanonicalName') )
} { $hash }
@"
FT_Lookup: FolderTYpeID -> FolderType Name created.
Use:
`t"`$FT_Lookup.GetEnumerator() | sort value | ft -AutoSize"
to view in console or type:
`t"`$FT_Lookkup | Out-GridView"
to browse, sort, and filter.
"@ | Write-Host
}
If ( Test-Path $Defaults ) {
(gi $Defaults).Property | ForEach{ [PSCustomObject]@{
'ID' = $_
'Name'= $FT_Lookup[$_]
}}
} Else {
Write-Host "`n`t`tNo Customized Templates`n"
}
}
Set-Alias -Name gcft -Value Get-CustomFolderTypes
gcft
You can copy & paste the whole block. That will give you a nice list like this:
Code:
PS C:\...\keith>Function Get-CustomFolderTypes {
>> $Defaults = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Defaults'
>> $FT = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes'
>>
>>
>> If ( ! ( $global:FT_Lookup )) { # Available for interactive use
>> $sbBegin = {$hash = @{ # for duration of PowerShell session
>> '{25CC242B-9A7C-4F51-80E0-7A2928FEBE42}' = 'Network'
>> '{D6D9E004-CD87-442B-9D57-5E0AEB4F6F72}' = 'Recycle Bin'
>> }}
>> $global:FT_Lookup = gci $FT | ForEach $sbBegin {
>> $hash.Add( $_.PSChildName , ($_).GetValue('CanonicalName') )
>> } { $hash }
>> @"
>> FT_Lookup: FolderTYpeID -> FolderType Name created.
>> Use:
>> `t"`$FT_Lookup.GetEnumerator() | sort value | ft -AutoSize"
>> to view in console or type:
>> `t"`$FT_Lookkup | Out-GridView"
>> to browse, sort, and filter.
>> "@ | Write-Host
>> }
>>
>>
>> If ( Test-Path $Defaults ) {
>> (gi $Defaults).Property | ForEach{ [PSCustomObject]@{
>> 'ID' = $_
>> 'Name'= $FT_Lookup[$_]
>> }}
>> } Else {
>> Write-Host "`n`t`tNo Customized Templates`n"
>> }
>> }
>> Set-Alias -Name gcft -Value Get-CustomFolderTypes
>> gcft
>>
FT_Lookup: FolderTYpeID -> FolderType Name created.
Use:
"$FT_Lookup.GetEnumerator() | sort value | ft -AutoSize"
to view in console or type:
"$FT_Lookkup | Out-GridView"
to browse, sort, and filter.
ID Name
-- ----
{B3690E58-E961-423B-B687-386EBFD83239} Pictures
{885A186E-A440-4ADA-812B-DB871B942259} Downloads
{94D6DDCC-4A68-4175-A374-BD584A510B78} Music
{5C4F28B5-F869-4E84-8E60-F11DB97C5CC7} Generic
{5FA96407-7E77-483C-AC93-691D05850DE8} Videos
{7D49D726-3C21-4F05-99AA-FDC2C9474656} Documents
{24CCB8A6-C45A-477D-B940-3382B9225668} HomeFolder
{DD61BD66-70E8-48DD-9655-65C5E1AAC2D1} StorageProviderDocuments
{672ECD7E-AF04-4399-875C-0290845B6247} StorageProviderMusic
{71D642A9-F2B1-42CD-AD92-EB9300C7CC0A} StorageProviderPictures
{51294DA1-D7B1-485B-9E9A-17CFFE33E187} StorageProviderVideos
{4F01EBC5-2385-41F2-A28E-2C5C91FB56E0} StorageProviderGeneric
{D6D9E004-CD87-442B-9D57-5E0AEB4F6F72} Recycle Bin
{0B0BA2E3-405F-415E-A6EE-CAD625207853} Searches
{DE2B70EC-9BF7-4A93-BD3D-243F7881D492} Contacts
{DB2A5D8F-06E6-4007-ABA6-AF877D526EA6} AccountPictures
{2C7BBEC6-C844-4A0A-91FA-CEF6F59CFDA1} Printers
{3f2a72a7-99fa-4ddb-a5a8-c604edf61d6b} Music.Library
I just recently posted here about a way I found to control dialog defaults seperate from Explorer windows. The OP there wanted Details. I could mod code or .reg file to Medium Icons instead. Let me know.