用自定义协议处理程序替换ActiveX?

时间:2017-06-29 14:36:23

标签: javascript

我正在尝试更新仍在某些事情上使用ActiveX的系统。例如,它使用此javascript来登录用户并访问互联网(来自我们的内部网)

var workingDirectory = "c:\\program files\\internet explorer";
var filename = "c:\\program files\\internet explorer\\iexplore.exe";
var arguments = referrer;
var obj = new ActiveXObject("FHS.ProcessLauncherUtility");
processId = obj.LaunchProcessReturnProcessId(domain, username, password, 
workingDirectory, filename, arguments);

显然,我更愿意做类似自定义协议处理程序的事情来处理这个并传递参数,但是我不完全会在这里工作,因为它在继续之前检查用户的登录。

1 个答案:

答案 0 :(得分:0)

ActiveX正在调用DLL,然后通过JavaScript将其传回ASPX页面。我用自定义协议处理程序将调用替换为exe(客户端),它处理ASPX页面在Windows应用程序中执行的所有操作。这使一切变得更加容易。启动exe的调用如下所示:

<html>
<body>    
    <form id="frmMain" runat="server">
        <a href="FHSProcessLaunch:freemanhealth|c:\\program files\\internet 
explorer|c:\\program files\\internet 
explorer\\iexplore.exe|http:\\google.com">Internet Login</a>
    </form>
</body>
</html>