【问题标题】:Wscript.run "No application is associated with the specified file for this operation"Wscript.run "没有应用程序与此操作的指定文件关联"
【发布时间】:2015-09-26 09:53:12
【问题描述】:

我正在尝试启动“GetPID.exe”并存储错误代码。 这是 .vbs 代码:

Set WshShell = CreateObject("WScript.Shell")

strPath = Wscript.ScriptFullName

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(strPath)
strFolder = objFSO.GetParentFolderName(objFile)
strFolder = strFolder & "\GetPID.exe"
Msgbox strFolder 
Dim temppid
temppid = WshShell.Run(strFolder , 0 , True)

但是,在最后一行,我收到以下消息:

G:\test001.vbs(11, 1) (null): 没有关联的应用程序 此操作的指定文件。

MsgBox 回显了 exe 的正确路径,所以我很困惑为什么会出现错误。

【问题讨论】:

  • temppid = WshShell.Run( """" & strFolder & """", 0 , True) 只是一个猜测。
  • @JosefZ 可以,谢谢
  • 经过很长时间@JosefZ 但我想“避免在 cmets 中回答问题”?

标签: vbscript runtime-error msgbox


【解决方案1】:

避免在 cmets 中回答问题?我同意自己,但this thesis seems to be considered opinion-based here
但是,我同意另一个(超过)主题句:猜测(预感)不是答案。换句话说,我喜欢来源充分答案中普遍适用、解释清楚的解决方案。

不幸的是,由于缺乏关于GetPID.exe 的信息,我既无法解释也无法提供这个强制答案:作为一般原则,将Run 方法的第一个参数包含在一对中双引号。

你可以使用下一个语法:

temppid = WshShell.Run( """" & strFolder & """", 0 , True)

【讨论】:

  • 不是强制回答,至少问题不是没有答案(:但猜测是回答问题...该怎么办?...删除问题?编辑问题?删除答案?编辑回答?
  • 如果不强制回答会更好:“避免在 cmets 中回答问题”只是我的意见……抱歉……
  • @loadingnow 你可以给出自己的答案来解释错误的来源;然后,考虑将最有帮助的一项标记为已接受。 See this page 解释为什么这很重要。我可以根据您的要求删除我的强制删除。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-28
  • 1970-01-01
  • 1970-01-01
  • 2011-02-07
  • 1970-01-01
  • 1970-01-01
  • 2013-11-06
相关资源
最近更新 更多