What API/protocol is used to implement `Share` feature in windows explorer - windows

I want to know the API or protocol of the Share feature in the windows explorer like this
Does anybody have any ideas?

ShowShareUIForWindow (MSDN says it requires Windows 8 but it actually only works in Windows 10/11 in a normal desktop application).
How do I show the sharing pane from a Win32 desktop application?

Related

Qt Windows 10 notifications

I am trying to make use of the Windows 10 notifications system (the ones poping out from the right side panel, available from notifications tray icon) in my Qt 5.13.0 program. I am looking at the Windows extras class: https://doc.qt.io/qt-5/qtwinextras-index.html but cannot find any API for such thing. Is it even possible somehow in Qt?
Yes, try the System Tray Icon example.
It is not a Windows only API. The QSystemTrayIcon class works in several platforms. In Windows 10, QSystemTrayIcon::showMessage() shows the notification you are looking for.

Share screen of Microsoft Windows 10 apps using webrtc

When a Windows 10 computer wants to share some of its screens using webrtc protocol (firefox navigator), a list of the windows that can be shared appears. In this list, only "normal" applications appears, not the one related to "apps". By example, spotify window appears, but OneNote window is not listed.
It seems (?) webrtc screen share is not compatible with UWP apps.
Knows someone a way to share the screen of an app via webrtc ?
Note: following link allows to reproduce this issue:
https://mozilla.github.io/webrtc-landing/gum_test.html
you do not need share anything, just push "window" and see the list of windows that appears.
I believe Chromium (the open source version - not sure about Chrome) faces the same problem as UWP requires to use a new Win 10 API which shows it's own window selector. And then obviously that selector doesn't work on other problems. So it's a common problem on Win 10, with no known good solution as far as I can tell.

How to add my protocol into default programs in windows 10?

Hi I have a new protocol URL:myTest, how can I add it in windows 10 so I can see it listed in default programs? Shall I add it in registry? How/Where exactly could I do that?
I want to associate a program with this protocol.
The registration for "Default Programs" is in the registry under SOFTWARE\RegisteredApplications. If your application fits one of the client types then you should point your RegisteredApplications value to Software\Clients\%ClientType%\%YourCanonicalName%\Capabilities, otherwise you can use any key like Software\%YourCompany%\%YourApp%\Capabilities or Software\Classes\Applications\%Filename%\Capabilities.
The most important subkey in your case is UrlAssociations.
You must also register your protocol in the normal way.
Some of this changed in Windows 10 and I would recommend that you test on Windows 7 or 8 as well. "Default Programs" has been deprecated in Windows 10.
You should also register yourself in the Applications key for integration with the "Open with" dialog.
This is the way it works for pure desktop apps, I'm not sure what happens if you convert a desktop app to UWP. Modern apps declare their protocol in the manifest.

Sharing data from a desktop application to a Windows 8 Metro application

I am wondering if anyone has come up with a technique for sharing data from a desktop application. Back in the Developer Preview Microsoft had the ability to share a screenshot from the desktop. In the Consumer Preview this feature disappeared and in the Release Preview isn't there either. I presume that the plumbing to do this is somewhere in there but haven't been able to get anything to work.
You could probably make the desktop app an HTTP server and connect from the Metro one or simply write/read file(s) in a known folder under Documents.

How can I customize the login screen for Windows Vista & 7?

I need to create a windows login UI for Windows 7 & Vista which logs user name and image from webcam (replacing their login screen). I don't know where to start from. Can I do this in C# or will I have to use C++? Any link will be helpful.
If you just need Windows 7 and Windows Vista support, you are looking for Credential Provider. You can find some samples in Windows SDK.
If you want to extend pre-Vista Windows, you are looking for GINA

Resources