Mr Jonny Hotchkiss

New Member
Joined
Nov 2, 2013
Messages
2
Hi guys,

Playing with fire, having had some joy in forcing Windows customisations. Succesfully removed most unwanted UI elements, including homegroup and burning.

I've seen how to customize the command bar / folder band, using the reg and a resource hacker.

I'm looking at Folder 32 of the UIFile section of shell32.dll, and here's the icons, for icons/preview pane/help:


<Button3d id="atom(OverflowButton)" accessible="true" accname="resstr(0x7C01, library(shell32.dll))" accdesc="resstr(0x7C02, library(shell32.dll))" accrole="pushbutton" accdefaction="Click" active="mouseandkeyboard" layoutpos="left" tooltip="true"/>
<Button3d id="atom(HelpButton)" accdefaction="resstr(0x79AC, library(shell32.dll))" accdesc="resstr(0x79AF, library(shell32.dll))" accessible="true" accname="resstr(0x79AE, library(shell32.dll))" accrole="pushbutton" active="mouseandkeyboard" layoutpos="right" tooltip="true"/>
<Button3d id="atom(PreviewButton)" shortcut="80" accdefaction="resstr(0x79AC, library(shell32.dll))" accdesc="resstr(0x7AC0, library(shell32.dll))" accessible="true" accname="resstr(0x7ABF, library(shell32.dll))" accrole="checkbutton" active="mouseandkeyboard" tooltip="true"/>


I'd like to recycle an icon/icon space, ie change help/preview to perform 'toggle navigation pane'.

The desired command store command, @
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell

is Windows.navpane

I know how to add the command to the command bar (adding a 'text label' command link), but is it possible to add an 'atom' for a new icon, which toggles the nav pane?

Assume the info needs translating, into the above form (in shell32.dll). Problem is, I don't know what the hex references are..

Can any smart people see any correlation between the command store info (for PreviewPane) and the UIFile info?

I see the description (toolbar: 'show the preview pane':
@shell32.dll,-31416 / accdesc="resstr(0x7AC0, library(shell32.dll)

(There doesn't appear to be an entry for the help button in the commandstore, which contradicts my thought process on 'the shell32.dll is being referenced in the registry')

I see the default action (accdefaction="resstr(0x79AC, library(shell32.dll)) but no corresponding default action in the registry...

Perhaps the name is the canonical name? (accname="resstr(0x7ABF, library(shell32.dll))
{1380d028-a77f-4c12-96c7-ea276333f982}

That's all I've got right now!

I'm thinking this is how shell extensions like 'Classic Explorer' achieve what they do, by enabling UI power-ups like toggle nav pane as a custom toolbar entry.... I already have a toolbar (QTTabBar's Versatile Bar), and I'd like to add extra icons.

 


Solution
It seems like you are delving deep into customizing Windows UI elements by exploring shell32.dll and the CommandStore registry for adding new icons and functionalities. Let's break down your queries and observations:

Customizing Icons in the Command Bar:​

  1. Desired Functionality: You want to repurpose an existing icon or icon space (like Help or Preview) to perform the 'toggle navigation pane' action.
  2. CommandStore Location: The specific command you are aiming to integrate is Windows.navpane, found in the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell.
  3. Correlation with UIFile Info:
    • Preview Pane Description: The...
It seems like you are delving deep into customizing Windows UI elements by exploring shell32.dll and the CommandStore registry for adding new icons and functionalities. Let's break down your queries and observations:

Customizing Icons in the Command Bar:​

  1. Desired Functionality: You want to repurpose an existing icon or icon space (like Help or Preview) to perform the 'toggle navigation pane' action.
  2. CommandStore Location: The specific command you are aiming to integrate is Windows.navpane, found in the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell.
  3. Correlation with UIFile Info:
    • Preview Pane Description: The description for the 'show the preview pane' command focuses on toolbar navigation and references resource strings within shell32.dll.
    • Default Action: The default action mentioned in UIFile does not have a direct corresponding entry in the registry, which raises a discrepancy.
    • Canonical Name: The canonical name provided in UIFile could potentially be associated with a unique identifier ({1380d028-a77f-4c12-96c7-ea276333f982}).
  4. Similarities with Shell Extensions: Your exploration aligns with how shell extensions, like 'Classic Explorer,' empower users to introduce custom toolbar entries like toggling the navigation pane or other functionalities. To address your questions and strategies:
    • Adding a New Icon for Toggle Nav Pane: It may be feasible to incorporate a new icon that triggers the 'toggle navigation pane' function within the Command Bar. You might need to decipher the hex references in shell32.dll that correspond to the desired functionality, similar to how the PreviewPane and HelpButton are structured.
    • Aligning UIFile Info with CommandStore Entries: Exploring further connections between the UIFile information on icons and the CommandStore entries can help establish a streamlined approach to integrate new functionalities seamlessly.
    • Utilizing Existing Toolbars like QTTabBar's Versatile Bar: Extending the capabilities of your existing toolbar by incorporating additional icons or actions, such as toggling the navigation pane, can enhance your Windows customization experience. In summary, your initiative to manipulate Windows UI elements through shell32.dll and the registry showcases a deep dive into system customization. Exploring the correlations between UIFile details and CommandStore entries can facilitate the seamless integration of new icons and functionalities within the Windows interface. If you require specific guidance on decoding hex references or establishing these correlations, feel free to delve deeper into those areas for a more tailored customization approach.
 


Solution
Back
Top