标签: vbscript

vbscript输出到控制台

使用vbscript将结果输出到控制台的命令或最快方法是什么?

windows console vbscript output

157
推荐指数
5
解决办法
41万
查看次数

在IE9中从Javascript传递给VBScript

我有一个用VBScript编写的框架.在这个框架内部的一些函数中,函数的参数在If语句中检查Nothing,然后执行一些动作.使用Javascript编写的框架的代码.所以我需要传递Nothing来执行某些操作.在IE8和早期版本中工作的下一个方法:

<script type="text/vbscript">
    Function Test(val)
        If (IsNull(val)) Then
            Test = "Null"
        ElseIf (IsObject(val)) Then
            If (val Is Nothing) Then
                Test = "Nothing"
            End If
        End If
    End Function

    Dim jsNothing
    Set jsNothing = Nothing
    msgBox(Test(jsNothing))
    msgBox(Test(Null))
</script>


<script type="text/javascript">
    alert(Test(jsNothing));
</script>
Run Code Online (Sandbox Code Playgroud)

在IE <9中输出将:Nothing,Null,Nothing.

在IE9中:没有,Null,Null.

如何在IE9中将Nothing从Javascript传递给VBScript?

对不起,我知道这很丑,但我被困了.并讨厌VBScript.

编辑: 有一个框架功能的例子.我无法改变它,因为它在应用中被广泛使用.

Function ExampleFunction(val)
    If (val Is Nothing) Then
        ExampleFunction = 1
    Else
        ExampleFunction = 0
    End If
End Function
Run Code Online (Sandbox Code Playgroud)

更新

退出工作.找到一个更好的.

javascript vbscript internet-explorer-9

123
推荐指数
2
解决办法
1万
查看次数

VBScript - 使用错误处理

我想使用VBScript来捕获错误并记录它们(即错误"记录某些内容")然后恢复脚本的下一行.

例如,

On Error Resume Next
'Do Step 1
'Do Step 2
'Do Step 3

当在步骤1发生错误时,我希望它记录该错误(或用它执行其他自定义功能),然后在步骤2恢复.这可能吗?我该如何实现它?

编辑:我可以这样做吗?

On Error Resume myErrCatch
'Do step 1
'Do step 2
'Do step 3

myErrCatch:
'log error
Resume Next

error-handling vbscript

81
推荐指数
3
解决办法
28万
查看次数

我可以将参数传递给VBScript(使用cscript启动的vbs文件)吗?

我将此脚本保存在"test.vbs"中:

Set FSO = CreateObject("Scripting.FileSystemObject")
Set File = FSO.OpenTextFile(workFolder &"\test.txt", 2, True)
File.Write "testing"
File.Close
Set File = Nothing
Set FSO = Nothing
Set workFolder = Nothing
Run Code Online (Sandbox Code Playgroud)

当我运行脚本时,我想传递"workFolder"变量的值.

我怎样才能做到这一点?我可以做吗?像"cscript test.vbs workFolder:'C:\ temp \'"之类的东西?

额外问题:是否需要使用"Set workFolder = Nothing"清理传递的变量,或者VBSCript在终止时自动执行此操作?也许"Set File = Nothing"和"Set FSO = Nothing"也是不必要的?如果您知道这两个问题的答案,请告诉我.

parameters vbscript arguments wsh execution

78
推荐指数
4
解决办法
25万
查看次数

在Classic ASP中解析JSON的任何好库?

我已经能够在Classic ASP(VBScript)中找到用于生成 JSON 的数量众多的库,但我还没有找到任何用于解析的 ANY .

我想要一些我可以传递JSON字符串并返回某种类型的VBScript对象(Array,Scripting.Dictionary等)的东西

任何人都可以推荐一个库来解析经典ASP中的JSON吗?

vbscript json asp-classic

74
推荐指数
5
解决办法
9万
查看次数

仅返回字符串中的数字0-9

我需要一个可以在VBScript和.NET中使用的正则表达式,它只返回字符串中的数字.

例如,以下任何"字符串"应仅返回1231231234

  • 123 123 1234
  • (123)123-1234
  • 123-123-1234
  • (123)123-1234
  • 123.123.1234
  • 123 123 1234
  • 1 2 3 1 2 3 1 2 3 4

这将在电子邮件解析器中用于查找客户可能在电子邮件中提供的电话号码并进行数据库搜索.

我可能错过了类似的正则表达式,但我确实在regexlib.com上搜索.

[编辑] - 在设置musicfreak的答案后添加了由RegexBuddy生成的代码

VBScript代码

Dim myRegExp, ResultString
Set myRegExp = New RegExp
myRegExp.Global = True
myRegExp.Pattern = "[^\d]"
ResultString = myRegExp.Replace(SubjectString, "")
Run Code Online (Sandbox Code Playgroud)

VB.NET

Dim ResultString As String
Try
      Dim RegexObj As New Regex("[^\d]")
      ResultString = RegexObj.Replace(SubjectString, "")
Catch ex As ArgumentException
      'Syntax error in the regular expression
End Try
Run Code Online (Sandbox Code Playgroud)

C#

string …
Run Code Online (Sandbox Code Playgroud)

c# regex vb.net vbscript code-generation

66
推荐指数
4
解决办法
6万
查看次数

64
推荐指数
2
解决办法
13万
查看次数

桌面路径的环境变量是什么?

我正在编写Windows批处理文件,并希望将某些内容复制到桌面.我想我可以用这个:

%USERPROFILE%\桌面\

但是,我在想,这可能只适用于英语操作系统.有没有办法可以在批处理文件中执行此操作,该文件适用于任何国际化版本?

UPDATE

我尝试了以下批处理文件:

REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop
FOR /F "usebackq tokens=3 skip=4" %%i in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop`) DO SET DESKTOPDIR=%%i
FOR /F "usebackq delims=" %%i in (`ECHO %DESKTOPDIR%`) DO SET DESKTOPDIR=%%i
ECHO %DESKTOPDIR%
Run Code Online (Sandbox Code Playgroud)

得到了这个输出:

S:\>REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
    Desktop    REG_EXPAND_SZ    %USERPROFILE%\Desktop


S:\>FOR /F "usebackq tokens=3 skip=4" %i in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folder
s" /v Desktop`) DO SET DESKTOPDIR=%i

S:\>FOR /F "usebackq …

windows vbscript powershell desktop localization

61
推荐指数
5
解决办法
20万
查看次数

Windows的内置ZIP压缩可以编写脚本吗?

Windows XP/Vista/2003/2008中内置的ZIP压缩是否能够编写脚本?我必须从BAT/CMD文件中调用哪些可执行文件?或者是否可以使用VBScript执行此操作?

我意识到这可以使用WinZip,7-Zip和其他外部应用程序,但我正在寻找一些不需要安装外部应用程序的东西.

windows vbscript scripting zip batch-file

60
推荐指数
3
解决办法
10万
查看次数

"On Error Resume Next"语句有什么作用?

我来了一些VBScript示例,我On Error Resume Next在脚本的开头基本上看到了该语句.

它有什么作用?

error-handling vbscript

60
推荐指数
5
解决办法
19万
查看次数