BS表单调用本地EXE程序带参数实现

需积分: 50 9 下载量 166 浏览量 更新于2024-09-02 1 收藏 2KB TXT 举报
"这篇文章主要介绍了如何在用友时空的CCERP和KSOA系统中,通过BS表单来实现带参数打开本地的第三方程序。利用JavaScript的ActiveXObject对象,可以创建一个WScript.Shell实例来运行指定路径的exe程序,并传递参数。同时,文章还提到了不同的窗口显示方式的数值含义。" 在用友时空的CCERP和KSOA系统中,BS(Browser/Server,浏览器/服务器)表单是一种基于Web的应用形式,允许用户在浏览器上进行操作。本文探讨了如何在BS表单中集成功能,使其能够带参数启动本地的第三方程序。这个功能通常用于扩展BS系统的功能,比如调用特定的工具、执行自动化任务等。 关键知识点包括: 1. **BS表单与第三方程序交互**:BS表单是基于HTML和JavaScript的,可以通过JavaScript代码来与系统环境进行交互。在这个例子中,使用`ActiveXObject("WScript.Shell")`创建了一个WScript.Shell对象,它是Windows脚本宿主的一部分,能够执行系统命令,如运行exe程序。 2. **参数传递**:通过变量`para`组合exe程序的路径和要传递的参数,以空格分隔。例如,`"D:\\222.exe'"+dzyname+"''"+rq+"'"`,其中`dzyname`和`rq`分别代表获取的Cookie值和当前日期时间,作为参数传递给exe程序。 3. **程序执行控制**:`Shell.run()`方法用于执行程序,它的第二个参数指定了窗口显示方式。`true`表示程序执行完成后才会继续执行后续代码。返回值`rs`如果是0,意味着程序执行成功。 4. **窗口显示方式**:文章末尾补充说明了不同数值代表的窗口显示模式。例如,0表示隐藏窗口,1表示激活并显示窗口,2表示最小化显示,3表示最大化显示,等等。这些值可以作为`Shell.run()`方法的第二个参数使用,以控制被启动程序的显示状态。 5. **异常处理**:`try...catch`结构用于捕获可能的错误。如果尝试运行的exe文件不存在,会弹出警告消息。 通过以上技术,开发者可以在BS环境中灵活地与本地系统资源交互,增强BS应用的功能性和用户体验。在实际应用中,需要注意安全问题,确保调用的第三方程序是可信的,并且参数传递过程不会引发安全风险。