中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-07 03:49
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于vbs 调用批处理文件的一个疑问 查看 721 回复 2
楼 主 关于vbs 调用批处理文件的一个疑问 发表于 2008-01-09 13:57 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
测试vbs
Set slz = CreateObject("WScript.Shell")
slz.Run WScript.Arguments(0)


测试bat
@echo off
echo %~f0
echo %~dp0
echo aaaaa >a.txt
echo 晕a.txt不是在%%~dp0文件夹里,跑 %UserproFile% 里去了
pause

将bat拖放到vbs结果,bat输出文件a.txt在%UserproFile%里,%0变量却是正确的,真郁闷~
第一高手 第二高手

2 发表于 2008-01-10 19:21 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
这个我也搞不明白,echo aaaaa >a.txt改为echo %cd%也一样,现实的是%UserproFile%,所以如果我要用%~dp0,都加上cd/d %~dp0
好像是系统定义好了的
PS:我倒觉得好像是:%HOMEDRIVE%%HOMEPATH%
3 发表于 2008-01-10 19:30 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
是的,我也试了很多次都是这样结果,真是邪了
第一高手 第二高手

论坛跳转: