如何使用 MsgBox 正确配置 VBS 中用户输入的条件操作?

如何使用 MsgBox 正确配置 VBS 中用户输入的条件操作?

今天我开始尝试为 Windows 创建自己的自定义对话框。我可以使用快捷方式/wscript.exe 来运行包含以下内容的 VBS 文件:(请忽略该对话框。我知道驱动器 C: 不会被擦除,我也不打算让这种情况发生。这只是在我制作有用的对话框之前的练习。)

Option Explicit
x=MsgBox("Proceeding will wipe the contents of your C: Drive. Proceed?", 1+48, "Format Drive C:")

我的脚本运行到此为止,如下所示: 在此处输入图片描述

但是,此时单击“确定”或“取消”时,会出现错误。以前,单击“确定”或“取消”会完全关闭此操作,但现在会出现运行时错误,我认为这比没有错误要好。但是,错误对我没有帮助。

在此处输入图片描述

Option Explicit
x=MsgBox("Proceeding will wipe the contents of your C: Drive. Proceed?", 1+48, "Format Drive C:")
If x=1 Then
y=MsgBox("The contents of your C: Drive could not be successfully deleted.", 0+64, "Error Formatting Drive C: - System Error 5")
If x=2 Then
x=MsgBox("Not all of the contents of your C: Drive were successfully deleted. Please try again.", 0+64, "Error Formatting Drive C: - System Error 303")

如果我添加下一步应该做什么的“说明”,那么当我打开文件时就会出现错误,我什么也做不了

在此处输入图片描述

我已经尝试更改了大部分代码。我尝试过使用 dim、删除 x、定义变量、将后续消息框定义为变量、删除括号等……我今天才开始编写自己的 VBS 文件,但我已经使用 .bat 文件进行批处理脚本编写很长时间了。即使改变了语言,我的所有故障排除也无济于事,我几乎可以肯定我已经正确定义了变量。

有人能告诉我我这样做对吗?我试过很多例子,但即使微软关于VBS-MsgBox的官方网页毫无用处。如果我在某个地方犯了一个愚蠢的错误,我提前道歉,但我已经更改了几乎所有的代码,但我仍然卡住了。

任何帮助大大非常感谢。我已经花了 4 个小时来修复这个问题。

答案1

尝试一下这个例子:

Option Explicit
Dim Title,Question
Title = "user input in VBS with MsgBox"
Question = MsgBox("Proceeding will wipe the contents of your C: Drive. Proceed ?",vbYesNo+vbQuestion, Title)
If Question = vbYes Then
    MsgBox "We proceed wipping your C:\ drive",vbExclamation,Title
    'Call your sub here to continue proceeding your script
Else
    MsgBox "Canceling the operation !",vbCritical,Title
    Wscript.Quit()
End If

有关更多信息MsgBox 常量

相关内容