The following code snippet is able to launch Microsoft Edge in kiosk mode from within a C++ console application.
ShellExecute(NULL, L"open", L"msedge.exe", L"--kiosk www.contoso.com --edge-kiosk-type=fullscreen --no-first-run", L"C:\\Program Files (x86)\\Microsoft\\Edge\\Application", SW_SHOWNORMAL);
However, when calling this from within a Custom Windows Credential Provider which provides a button that's accessible on the sign-in / lock screen of Windows 10/11 - Edge refuses to open. The same line of code (slightly modified) in the credential provider will open up Chrome in kiosk mode perfectly.
I have a feeling Edge may not be opening because a user profile is yet to be loaded (as we're trying to open Edge on the sign-in / lock screen), but not 100% sure on that.
Any suggestions or feedback is much appreciated.