如何在没有双引号的情况下执行shell命令

时间:2014-01-28 06:46:58

标签: vb6

我需要在命令提示符下使用vb6执行以下命令, quser / server:machinename 所以我的代码是,

mycommand = "quser / server: & strString" 'where strstring will be my machine name..
Shell "cmd.exe" & mycommand

问题是它是在命令提示符下用双引号执行的。但如果有双引号,我不会得到预期的结果。我需要在没有双引号的情况下执行上述操作。 请告诉我你的意见。

2 个答案:

答案 0 :(得分:1)

您可以使用双引号对vb6字符串中的双引号进行编码。

e.g。

Dim str as String
str = "This is some text with a " & """double quote""" & "in it."
MsgBox str

将显示一条消息:这是一些带有“双引号”的文字。

这就是我想你想要的:

mycommand = """quser / server:" & strString & """"
Shell "cmd.exe " & mycommand

请注意,cmd.exe之后没有空格

答案 1 :(得分:0)

我能看到的第一个问题是你的最后一个双引号是在错误的地方,所以 mycommand只是字符串"quser / server: & strString"

将名为strString的变量的值附加到要使用的字符串的末尾

mycommand = "quser / server:" & strString

下一个问题是cmd.exe和参数字符串之间需要有空格。 替换“quser ... with”quser ...或将“cmd.exe”替换为“cmd.exe”