首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VBS:在目录之间跳转

VBS:在目录之间跳转
EN

Stack Overflow用户
提问于 2014-12-12 21:38:50
回答 1查看 107关注 0票数 0

我正在尝试写一个小的vb脚本,在这个脚本中我遇到了在目录之间跳转的问题。示例:

代码语言:javascript
复制
dim devenv
set devenv = objShell.Environment("PROCESS").Item("VS120COMNTOOLS") + "..\IDE\devenv.com"

我的问题是vb不理解'..\‘,或者我用错了它。如何正确地在目录之间跳转?

EN

回答 1

Stack Overflow用户

发布于 2014-12-12 22:01:29

我不知道您想跳转到谁,但这展示了如何根据环境变量设置.CurrentDirectory (以及如何正确地进行字符串连接):

代码语言:javascript
复制
Option Explicit

Dim goFS : Set goFS = CreateObject("Scripting.FileSystemObject")
Dim goWS : Set goWS = CreateObject("WScript.Shell")
WScript.Echo 0, goWS.CurrentDirectory
WScript.Echo 1, goFS.FileExists("devenv.com")
'Dim sPath : sPath = goWS.Environment("PROCESS").Item("VS90COMNTOOLS") & "..\IDE"
Dim sPath : sPath = goFS.BuildPath(goWS.Environment("PROCESS").Item("VS90COMNTOOLS"), "..\IDE")
WScript.Echo 2, sPath
goWS.CurrentDirectory = sPath
WScript.Echo 3, goFS.FileExists("devenv.com")

输出:

代码语言:javascript
复制
cscript 27444871.vbs
0 E:\trials\SoTrials\answers\27276693\vbs
1 0
2 C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\..\IDE
3 -1

建议使用.BuildPath而不是字符串连接。

P.S.

刚看到:你的

代码语言:javascript
复制
set devenv = objShell.Environment("PROCESS").Item("VS120COMNTOOLS") + "..\IDE\devenv.com"

尝试使用Set进行非对象/字符串赋值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27444871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档