First, some background: we use the EO browser to display our EHR web site (wraps it up with 2ary authentication, and a few other things that are not easily done purely in the web). Normally this is a click-once program, and runs directly on the machine by clicking the shortcut to launch the click-once program. We have some customers who use single sign on (SSO) and launch it via a URL protocol added to the registry (when the program installs, it also updates the registry to handle the URL stuff so that when the gehrimed URL comes in Windows can handle it and launch our Windows launcher by essentially clicking the shortcut). This bypasses some initial things we collect from the user logging in normally, so we use the QueueScriptCall to make some async requests to the web site to get us that info.
Prior to the 2015 release, this was working just fine. For some reason the 2015 release works fine when running directly, but not when loaded via the URL handler (code below). In theory this should be the exact same program - it just loads the same web page from the URL handler rather than our normal sign on service. The EvalScripts are running for both correctly.
Additionally, the resource handler acts the same (and may or may not be related): works as expected when running as a click once, never gets hit running from the URL handler.
Not sure where the issue is yet - we're still testing.
Code: C#
public static void SetShortcut()
{
var rKey = Registry.CurrentUser.CreateSubKey(@"Software\Classes\gehrimed");
rKey.SetValue("", "URL: gehrimed Protocol");
rKey.SetValue("URL Protocol", "");
var key2 = rKey.CreateSubKey(@"shell\open\command");
string shortcut = Environment.GetFolderPath(Environment.SpecialFolder.Programs);
string exepath = System.Reflection.Assembly.GetExecutingAssembly().Location;
key2.SetValue("", string.Format("\"{0}\" \"%1\"", exepath));
key2.SetValue("restart", string.Format("\"{0}\\GPM\\gEHRiMed Launcher.appref-ms\"", shortcut));
rKey.Close();
key2.Close();
}