通过IE单点登录

时间:2016-09-28 15:04:02

标签: javascript windows single-sign-on electron activexobject

我目前正在构建一个Web界面,其中列出了数据输入的大量数据以供细读。该网站实际上并没有更新我们的后端。我们有一个供应商支持的自定义构建的Windows应用程序,我们用它来输入数据。

此Web界面正在替换一些Excel列表+ VB。此系统的Excel版本能够将一些数据传递给已打开的自定义Windows应用程序实例,并将一个在Excel中单击的ID带入应用程序,因此我尝试从浏览器复制此数据。

到目前为止,我可以在IE中使用这个JavaScript:

<script type="text/javascript" language="javascript">
function RunFile() {
WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run(pathToApp, 1, false);
}
RunFile()
</script>

但我认为这种方法试图打开Windows应用程序的新实例。不访问当前打开的版本。我想看看我需要使用windows“sendKeys”方法的VB代码。

这不是我以前做过或不需要做的事情。所以这对我来说很新鲜。

  1. 是否可以通过浏览器将数据传递给已打开的Windows应用程序?

  2. 还有其他选择,我想也许Electron可能在这方面有帮助吗?或者我错了,在这方面打败了一场失败的战斗?

1 个答案:

答案 0 :(得分:1)

场景听起来非常复杂,但您可能应该检查此Windows应用是否可以与Office Add-Ins集成。

从他们的网站:

Office加载项可以做什么? Office加载项几乎可以执行网页在浏览器中可以执行的任何操作,例如:

  • 通过创建自定义功能区按钮和选项卡来扩展Office本机UI。
  • 通过HTML和提供交互式UI和自定义逻辑 的JavaScript。
  • 使用JavaScript框架,例如jQuery,Angular和 许多其他人。
  • 通过HTTP和连接到REST端点和Web服务 AJAX。
  • 如果使用实现页面,则运行服务器端代码或逻辑 服务器端脚本语言,如ASP或PHP。

此外,    Office加载项可以与Office应用程序和加载项进行交互    用户的内容通过Office加载项的JavaScript API    基础设施提供。

网络应用

兼容的Web应用程序的最小版本是静态HTML网页。该页面可以托管在任何Web服务器或Web托管服务(如Microsoft Azure)上。您可以在您选择的服务上托管您的Web应用程序。

最基本的Office加载项包含一个静态HTML页面,该页面显示在Office应用程序中,但不与Office文档或任何其他Internet资源交互。但是,因为它是一个Web应用程序,所以您可以使用托管服务提供商支持的任何技术(客户端和服务器端)(例如ASP.net,PHP或Node.js)。要与Office客户端和文档进行交互,您可以使用我们提供的office.js JavaScript API。