问题标签 [vbscript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
13229 浏览

shell - WScript.Shell 和阻塞执行?

我正在使用WScript来自动化一些任务,方法是使用 WScript.Shell 调用外部程序。

但是,现在它不等待外部程序完成,而是继续前进。这会导致问题,因为我有一些任务依赖于其他任务首先完成。

我正在使用如下代码:

有没有办法做到这一点,所以它会阻塞,直到 shell 执行的程序返回?

0 投票
2 回答
1312 浏览

sql-server - VBScript/ASP Classic 和 ADO 中的参数化

我在这里有点困惑。据我所知,微软声称参数化是保护数据库免受 SQL 注入攻击的最佳方式。但我在这里发现了两个相互矛盾的信息来源:

该页面说使用 ADO 命令对象。但是这个页面说命令对象对于脚本来说是不安全的。我似乎记得在某处读过,由于安全漏洞,命令对象不应该在 VBScript 或 JScript 中使用,但我似乎找不到那篇文章。

我在这里遗漏了什么,或者这两篇文章似乎相互矛盾?

0 投票
9 回答
16580 浏览

asp-classic - VBScript conditional short-circuiting workaround

I have a large classic ASP app that I have to maintain, and I repeatedly find myself thwarted by the lack of short-circuit evaluation capability. E.g., VBScript won't let you get away with:

...because if Rs("myField") is null, you get an error in the second condition, comparing null to 0. So I'll typically end up doing this instead:

Obviously, the verboseness is pretty appalling. Looking around this large code base, the best workaround I've found is to use a function the original programmer wrote, called TernaryOp, which basically grafts in ternary operator-like functionality, but I'm still stuck using a temporary variable that would not be necessary in a more full-featured language. Is there a better way? Some super-secret way that short-circuiting really does exist in VBScript?

0 投票
3 回答
3720 浏览

events - 向我的 COM 对象的 VBScript 用户公开事件处理程序

假设我有一个 COM 对象,用户可以通过如下调用访问它:

我想做的是允许用户为对象指定一个事件处理程序,如下所示:

这是否可能,如果可以,我如何在 C++(特别是 BCB 2007)的类型库中公开它?

0 投票
2 回答
1350 浏览

python - IIS上的python cgi

如何设置 IIS 以便可以从 asp 页面调用 python 脚本?

好的,所以我在这里找到了该问题的答案:http://support.microsoft.com/kb/276494

继续我的下一个问题:如何从经典的 asp (vb) 代码中调用 cgi 脚本?特别是不在网络根目录中的。

0 投票
1 回答
962 浏览

vbscript - 非管理员时 WMI 中缺少课程

我希望在 Windows XP中以受限用户身份登录时能够查看Win32_PhysicalMedia信息(无管理员权限)。以Admin身份登录时它工作正常, 刚刚给出了一份干净的健康单,并且类正确生成了信息,但此代码的计数为 0WMIDiagWin32_DiskDriveWin32_PhysicalMedia

或者,如果在物理驱动器属性上找到的硬盘序列号在SerialNumber 我可以作为受限用户阅读的另一类中可用,请告诉我。我没有尝试使用 WMI 写入任何属性,但在以Limited User身份运行时我无法读取此内容。有趣的是,DiskDrive错过了该属性,它在以受限用户Signature身份运行时对我的应用程序有用,但在从 管理员帐户运行时存在。

0 投票
3 回答
7480 浏览

vbscript - 我可以在一个 HTA 中混合 VBScript 和 JScript 吗?

是否可以在同一个 HTA 中同时使用 JScript 和 VBScript?我可以从 JScript 调用 VBScript 函数,反之亦然吗?是否有任何“陷阱”,例如首先运行 JScript,然后运行 ​​VBScript(经典 ASP 页面存在此问题)。

0 投票
2 回答
17260 浏览

vbscript - 如何使用 VBScript 终止由特定用户启动的进程

我有多个用户在 Windows 2003 服务器上运行 attachemate。我想杀死 user_1 启动的 attachemate.exe 而不杀死 user_2 启动的 attachemate.exe。

我想使用 VBScript。

0 投票
3 回答
4561 浏览

wcf - 如何格式化用于执行从 VBScript / ASP 到 WCF 服务的 HTTP 发布的消息并获得响应?

做帖子不是问题!格式化消息以便我得到响应是问题所在。

理想情况下,我能够构建一条消息并使用 WinHTTP 向 WCF 服务(托管在 IIS 中)执行发布并获得响应,但到目前为止,我一直无法构建正常工作的东西。

有没有人有一个这样做的例子是直截了当的?

在 2.0 Web 服务世界中,这就像在 web.config 中设置一个设置以使服务响应帖子然后使用正确的参数调用适当的 Web 方法一样简单。在 WCF 世界中似乎没有类似的东西。

到目前为止,我没有选择将使用者(vbscript 端)转换为 .NET。

假设此时在端点我可以转换为使用任何可用的绑定,直到 .NET 3.5 支持的任何绑定,但同时如果这可以使用 WsHttpBinding 或 BasicHttpBinding 完成,那么正确的答案将是描述如何在 VBScript 的上下文中为这些绑定中的任何一个设置消息格式,或者如果没有办法这样做,那么就说,你不能这样做。如果这可以使用 WebHTTPBinding 完成,那么我还没有找到实现它的方法,因为我已经研究了 WebInvoke 属性并且无法创建从 VBScript 到 WCF 的正常工作的测试。

假设发布的数据类型是字符串,响应也是字符串。

这个问题也与 WinHTTP 无关。我已经知道如何使用 WinHTTP 执行发布,这是构建 WCF 服务将响应的消息的问题。

虽然我可以使用 WinHTTP 以外的其他东西来执行从 ASP 到 WCF 服务(如 XMLHTTP)的发布,但我仍然存在构建 WCF 服务将响应的 XML 消息的问题。我已经对此进行了尝试,但仍然无法理解我需要使用哪种格式来实现这一点。

从理论上讲,我知道所有 WCF 服务需要的是格式正确的消息。我只是无法正确构建消息,通常虽然每个人都对如何发送消息有一些建议,但我还没有看到有人给出一个实际示例来说明在这种情况下正确的消息格式是什么,因为每个人都习惯于使用 .NET 发送消息,在这种情况下一切都已为您完成。

0 投票
9 回答
403 浏览

python - 如果决定我们的系统需要大修,最好的方法是什么?

我们正在维护一个使用 VBScript 作为主要语言基于 Classic ASP 构建的 Web 应用程序。我们一致认为我们的后端(如果您愿意的话是框架)已经过时并且没有为我们提供快速前进的适当工具。我们几乎已经接受了无处不在的当前 webMVC 模式,并且无法以合理的方式使用当前的技术来做到这一点。最大的缺失特性是正确的调度和继承模板等。

目前有两条路径正在讨论:

  1. 使用 JScript 将现有应用程序移植到 Classic ASP,这将使我们有希望从那里转到 .NET MSJscript 而没有太多麻烦,并最终在 .NET 平台上结束(最好 MVC 的东西到那时就完成了,ASP.NET)。在我们看来,NET 并没有比现在好多少)。这被认为是比下一个选择更安全、风险更低的路径,尽管它可能需要更长的时间。
  2. 使用其他一些技术完全重写应用程序,现在这个包的领导者是 Python WSGI,它有一个自定义框架、ORM 和一个很好的模板解决方案。这里甚至还有 django 和其他预建解决方案的回旋余地。这种方法有望成为最快的解决方案,因为我们可能会在实际产品旁边运行测试版,但如果我们不能/不正确,它确实有可能浪费大量时间。

这并不意味着我们的逻辑消失了,因为我们多年来建立的东西相当稳定,正如我们所说的那样难以处理。它建立在 SQL Server 2005 之上,大量使用存储过程,并在 IIS 6 上发布,只是为了提供更多背景知识。

现在,问题。有没有人采取上述两条路径中的任何一条?如果是这样,它是否成功,它怎么可能更好,等等。我们不希望在做这两件事中偏离太多,但一些建议或其他解决方案可能会有所帮助。