Custom Windows Fetures - windows

Is it possible to create custom windows features? for instance add new buttons to the start menu or maybe a button on the task bar like the Cortana button. Even add a new button to windows explorer. If it is can someone please point me in the right direction as google doesn't seem to return any helpful results

You can create custom widgets on the taskbar by creating a deskband shell extension.
Creating a button in the start menu or in other places that have no extension support requires major work and will often create a buggy/unstable result because you might have to inject yourself into the Explorer desktop process (and other processes on Windows 10).

Related

Windows 8.1 Create Custom Toolbar Widgets?

I have a need to regularly search our internal directory for colleagues across the organisation (30k people). It's slow and irritating to launch even a shortcut to the intranet directory.
What I'd like to do is create a custom 'widget' (might be the wrong word) on my Windows 8.1 taskbar which is just a text box and a search button. This would then launch a browser with a HTTP POST url which will have my query in the URL.
I'm having trouble finding any documentation on how to create a custom taskbar app/widget.
Any ideas where I can find the documentation on this?
A deskband will do.But Microsoft's recommendation is don't create new deskbands , write thumbnail toolbars instead. If you go with write thumbnail toolbars, you can create an enter text button and a search button, register with ITaskbarList3::ThumbBarAddButtons, and create a textbox when the enter text button is clicked for the text editing.
You can also integrate with Windows search by writing a web service that integrates with Windows Federated Search. But this uses Windows Explorer's search box and your data there could be pollution to the user when they search for something else.

Disabling Windows 10 Game Bar for specific application

In some conditions the Windows 10's game bar opens up with my application (made with Delphi, VCL). Thats not a game and i don't directly use DirectX or OpenGL, but it opens up.
To be specific, when i reduce to tray my app and a popup is opened the Game Bar appears.
I found a numbers of sites with tutorial for totally disable the Windows 10 game bar (like this) but i want to disable for my application only, i don't think users will be happy to have a windows feature silently disabled by my app
Is this possible? I cannot find any documentation about it
You can disable it following this solution :
Press Win+G, click the Gear icon (Settings) and uncheck "Remember this is a game" (https://superuser.com/questions/1086248/windows-10-xbox-dvr-app-thinks-chrome-is-a-game).
Note that if the name of the application is Main.exe, this checkbox is not visible.
If the name of the app is main.exe or anything else, it is visible.
It seems it is stored in the registry : HKEY_CURRENT_USER\System\GameConfigStore\ in the Children and Parents directories.
You can try to find your app using the ExeParentDirectory key.
https://www.reddit.com/r/ffxiv/comments/3fbu0x/win_10_game_bardvr_anyone_having_issues/
I don't know if it applies to an executable where Windows decides it is a game (like Main.exe)

Can we add a common Jump list Task to all running applications on WIndows 7+

Before Windows 7 came, right clicking on any application on taskbar use to popup a menu like shown in picture below.
All the menu items that you see below 'maximize' and above 'close' are the custom menu that I had added. I had developed a system tool called PMW(process Manager for windows) that would add these menu's to all the running applications.
With Windows 7 and above these kind of context menu is gone. Old menu comes only when we do shift key+ right click. Now After 4-5 years I have been thinking to upgrade this tool.
I was wondering if Windows jump list provides an option to add a generic task to all application? If it does allows then perhaps I update this tool for Windows.
My understanding is with JumpList I can add two types of menu one is URLs/Files and second is Task. and both of these perhaps would be part of only application that you developing. I think perhaps I cant inject a few my task into the jump list of all other applications. Can I?

Windows 7 taskbar thumbnails for one app (such as in IE8)

Under Windows 7, IE 8 shows every open tab as a taskbar thumbnail. How can I achieve this in my own app?
MSN Messenger exhibits the same behavior.
I believe that this is done with the Windows API Code Pack: http://code.msdn.microsoft.com/WindowsAPICodePack
And here's a blog post explaining how "custom window previews can be used to expose a list of child windows (browser tabs) as thumbnail- and peek-enabled windows in the taskbar." Sounds like what you need: http://blogs.microsoft.co.il/blogs/sasha/archive/2009/02/12/windows-7-taskbar-apis.aspx
The following article should help. There are several new taskbar features in Windows 7, all of them are discussed at the link below.
http://msdn.microsoft.com/en-us/magazine/dd942846.aspx
Note that the Aero Peek feature has nothing to do with task bar buttons, it just lets you make all windows fully transparent to preview your desktop and gadgets. What you were actually looking for is "Windows 7 Grouped Taskbar Thumbnails", in case you need to do additional searches.
This is the best reference I've got. Note that I'm assuming native code here, a .NET equivalent could be p/invoke'd up in a fairly straight forward manner.
It boils down to the following:
For each tab, create a proxy window
For these windows call DwmSetWindowAttribute to set DWMWA_FORCE_ICONIC_REPRESENTATION & DWMWA_HAS_ICONIC_THUMBNAIL
Whenever these proxy windows receives a WM_DWMSENDICONICLIVEPREVIEWBITMAP message, render the corresponding thumbnail into the proxy window
Whenever a proxy window receives a WM_ACTIVATE, switch to the correct tab
You also need to handle WM_SYSCOMMAND
Grab your ITaskbarList4
Use it to register each of your proxy windows as a tab
Manage tab order and what not via the ITaskbarList4 interface (this includes activating tabs)
It seems like there should be a better way to do this, but its all I'm aware of at the moment.

Placing toolbar into Windows taskbar (ala language bar)

I'm currently in the process of writing a Windows MFC app to quickly search our corporate DMS. The idea is to have a button placed at the right hand edge of the windows taskbar much like the language bar, that when clicked, would popup the search interface.
I can't seem to find much regarding how placing items in the taskbar like this is performed, can anyone point me to some useful resources or examples?
I'd prefer native API resources (that is, not .NET) if possible.
Thanks!
Such toolbar is named a Deskband.
Here's an example: http://www.codeproject.com/KB/shell/dotnetbandobjects.aspx
You could look at the StExBar. It implements an explorer toolbar which can also be added to the taskbar. Doesn't use MFC though, just plain win32.

Resources