最近,我有一位朋友教我一些VBScript。这是以下代码。
help = MsgBox("Click on 'Yes'",vbYesNoCancel, "Orders")
WScript.Echo help
该文件名为File.vbs
,据我所知.vbs
代表Visual Basic脚本文件。但最近,我一直在网上搜索,发现VBS是另一回事。它看起来像html
或xml
。这样的事情。
<% Option Explicit
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>VBScript Example</title>
</head>
<body>
<div><%
' Grab current time from Now() function.
' An '=' sign occurring after a context switch (<%) is shorthand
' for a call to the Write() method of the Response object.
Dim timeValue = Now %>
The time, in 24-hour format, is
<%=Hour(timeValue)%>:<%=Minute(timeValue)%>:<%=Second(timeValue)%>.
</div>
</body>
</html>
有人可以解释我是否正在查看正确的语言或其他内容? 提前谢谢!
答案 0 :(得分:3)
VBScript没有两种类型,区别仅在于如何使用它。
VBScript Scripting Language不能独立运行:它依赖于Scripting Host,它可以采取各种形式,具体取决于其执行的上下文。
对于客户端方案,有几种方法可以使用:
通过可以执行.vbs
和.wsf
扩展文件的Windows Scripting Host(有关WSF的详情,请参阅Windows Script File)。< / p>
通过Internet Explorer (从Microsoft Edge开始不推荐使其与现代标准浏览器保持一致)通过<script>
HTML标记。
通过类似于Internet Explorer的HTA但限制性较小,旨在用于访问本地资源(否则将被视为不安全)的受控环境中。它通常用于设计在企业中使用的基于Web的界面(mshta.exe
包含在大多数Windows版本中)。
对于服务器端方案,选项更简单:
Classic ASP是一个服务器端脚本引擎,它将VBScript作为其默认脚本语言。经典ASP作为IIS内的ISAPI扩展运行,可以配置为处理任何Active Scripting Language (迄今为止包括VBScript和JScript,但也有一个Perl的自定义实现,称为{{ 3}}将在非基于IIS的服务器上运行)。
在第二个示例中,VBScript <%
和%>
周围的奇怪括号是Classic ASP脚本引擎的一部分。它们被称为“内联代码块”:它们帮助Classic ASP Interpreter识别在Web服务器返回最终HTML之前需要处理的代码。调用Classic ASP VBScript是错误的,因为它有自己的对象模型,它完全独立于VBScript - 它包含了Request
,Response
和Server
之类的对象,它们只能是在Classic ASP的上下文中使用。