How to add a new button to windows explorer? - windows

I want to know how to add a new button in windows explorer. I don't want to create a new toolbar. I just want to add a new button in the same windows explorer standard buttons toolbar and not IE.
I appreciate any help possible.
Regards

I don't think that is supported.
You could probably inject into the process and subclass the window and add the toolbar button if hacky solutions are OK.

I have found this article which seems to satisfy my desires... I'm currently on the path of starting development with the new interfaces and will let you know if they work as needed.
The article: http://www.windowsvistaplace.com/shell-namespace-extension-adding-custom-command-module-items/windows-vista#comment-13115
Thanks for everyone who replied/commented on my question

I got something.
first an article:
http://www.askvg.com/how-to-customize-windows-explorer-command-bar that I found searching for {5c4f28b5-f869-4e84-8e60-f11db97c5cc7} which is the FolderType CLSID for Generic.
You find those in the windows registry in HKEY_LOCAL_MACHINE under the key:
SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes
Read the article it's pretty informative! But if you wanna have code already:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksNoItemsSelected]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksNoItemsSelected\0]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksNoItemsSelected\0\{E7E304C4-3C99-49BD-9E5F-980D15103C50}]
"Icon"="C:\\Windows\\System32\\shell32.dll,3"
"InfoTip"="some bla bla "
"Title"="a button!"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksNoItemsSelected\0\{E7E304C4-3C99-49BD-9E5F-980D15103C50}\shell]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksNoItemsSelected\0\{E7E304C4-3C99-49BD-9E5F-980D15103C50}\shell\InvokeTask]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksNoItemsSelected\0\{E7E304C4-3C99-49BD-9E5F-980D15103C50}\shell\InvokeTask\command]
#="\"C:\\Users\\DUMMYUSER\\hello.exe\""
Rigth in the middle you have a random CLSID created along with the Title aka button text or label, InfoTip which appears when hovering with the cursor and Icon which sadly doesn't work. At the end there is the command to execute. Change those to your desire, save as a *.reg and just run it.
A bummer has to be said: Does not work on Non-Admin users! I tried it but seems you cannot just replace HKEY_LOCAL_MACHINE with HKEY_CURRENT_USER.

Related

Monosnap on Windows - Shortcut key setting to copy to clipboard

In MacOS, I will modify my screenshot key to use monosnap and then after no modifications or minor ones, I will then use a shortcut key to place it in my clipboard. I am trying to make the same workflow in the windows version.
Here is what I see:
I do not see a setting to "Copy image to clipboard":
If there another way to achieve my goal, please share. Oh btw, I would rather not require the option to upload my images to an external service. Thank you!
Pretty much the same:
1. Focus your Monosnap Editor
2. Press Ctrl+C
Now you have your edited image in clipboard.

Adding context menu item to specific extension via registry

Let's start off by saying I am on Windows 10 and that i've seen many posts about this subject but none seemed to work for me. Looking at this post has solved some issues but I still need some assistance. Add menu item to windows context menu only for specific filetype
What I want to do is add an a specific item to only images (I will start with .jpg) that will say "Upload Image". Here is what I have so far:
I searched for the default value of HKEY_CLASSES_ROOT\.jpg which is jpegfile.
I added this key HKEY_CURRENT_USER\SOFTWARE\Classes\jpegfile\shell\ImagePanel\command
I set command default value to my application directory.
After doing all that, the only thing that changed is the context menu shows my application under "Open with" and doesn't actually have its own spot on the context menu.
Am I doing something wrong here?
Had exactly the same problem, something must have changed in Windows 10.
I finally managed to get it work, here are the keys that worked for me:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\
or this one for all the image extensions:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\image\Shell\
for example this is what I used (the first entry is for loading the icon, just the second one is needed to actually create the new menu item):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\image\shell\Photoshop]
"Icon"="C:\\Program Files\\Adobe\\Adobe Photoshop CS6 (64 Bit)\\Photoshop.exe,0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\image\shell\Photoshop\Command]
#="\"C:\\Program Files\\Adobe\\Adobe Photoshop CS6 (64 Bit)\\Photoshop.exe\" \"%1\""

how do I create a program in windows that can be activated by pressing short cut key instead of clicking?

I need to create a GUI working on windows that can be activated by pressing short cuts.
1. is it possible without setup class?
2. if not possible, just achieve pressing hotkeys and activate my program--how should i code it out--would be enough
thanks (I am using Qt for vs2012 add in to do the GUI)
I put some code up that starts a thread that does this. It is windows specific, but it does the job.
Clipboard Shortcut/Hotkey binding with Qt outside of application
One alternative to all of this, is to go to a shortcut to your program, go to its Properties, and then click on the shortcut area and type your desired shortcut. As long as it doesn't overlap with existing hotkeys that are registered in windows, it should work, without a hidden presence of your app in the system tray or some other background thread.
Hope that helps.
libqxt offers a QxtGlobalShortcut class that does what you want.

how to Create my own shortcut key as Ctrl Alt Del

I need to create my own shortcut key, as in when we press Ctrl + Alt + Delete we get the task manager, likewise i need to click some other 2 keys to execute my program.
How should i do this ?
and also i need to know what language i need to program this?
I am using Windows Vista as my OS.
I think what he means is he wants to be able to create shortcut keys in his application.
If you're using Visual Studio, you can do this through the visual designer in menu options.
Anyways, I hope this article sheds some light onto the situation:
http://support.microsoft.com/kb/839201
You tagged vb, and this article explains it in VB as well as C#.
Good luck.
I think you want to use a hotkey under AutoHotKey to run another program. Once you have an autohotkey script running, you can also add keys to perform actions within that program, set up other keys to launch other programs, etc. See entries under StackOverflow's 'autohotkey' tag and other help pages referred to from those links.
Create a shortcut that performs the Ctrl-Alt-Del action for you
(very useful in environments where OSK is not accessible). Create a shortcut to the following:
C:\Windows\explorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}
Double-click that shortcut to access the Ctrl-Alt-Del screen. Now you can forget about the inception through multiple RDP.

Replacing the Start Menu

I want to make my own Start Menu replacement and I am trying to figure out what approach to use. There are a number of ways the Start Menu is activated: click on it, hit windows key, hit Ctrl+Esc keys or tab until it gets focus and hit the space or enter key.
I know enough about win32 to do each one of these separately and I could figure it out with Spy++. I'd really like to know if there is an easier way through and I can't find any helpful articles.
I'd like to do this for XP and Vista/Windows 7.
I guess that you would have to inject yourself into the explorer.exe process (There can be more than one, but you want the one that has the "Shell_TrayWnd" window) and subclass the taskbar or one of its children to catch/eat the message that brings up the startmenu and instead, show your own window.
Take a look at http://bitbucket.org/wez/evildesk/src/755606d7935d/gdi.cpp , I think you could start your project by seing what they've done.
You can use WindowBlinds and design your own Start Menu as well.

Resources