Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

SHELL调用CMD程序的路径问题!

浪迹天涯  发表于:2008-12-19 17:45:24  
复制

调用的语句:Shell "cmd /k" & CurrentProject.Path & "\dir.cmd"

 

dir.cmd的内容: dir/w

 

我预想的调用结果应该是列出当前目录,单实际结果却是列出了我的文件的目录

 

也就是说,调用CMD的时候目录被放置到了我的文档,而不是在当前目录执行后续命令。

 

我也试过将后缀 .cmd 更换为 .bat ,但是调用结果也一样。

 

不过如果新建一个MDB,写好上述语句后立即执行倒是可以列出当前目录的文件,但是一旦保存退出再打开后,结果却变成列出我的文档的目录。

 

我已经传了上述语句的MDB上来,那位DX可以帮看看呢?小弟在此非常感谢!

 

点击下载此附件

 

Top
黎红军 发表于:2008-12-20 13:55:02

我觉得是系统中cmd默认设置值的问题,可以考虑你的dir命令中跟路径,即把你的当前路径传写到你的dir.bat文件中去。



ACMAIN.CHM 发表于:2008-12-21 13:18:09

是个理解上的问题。 你其实执行是这样:

 

cmd /k c:\xxx\projectpath\dir.cmd

 

这个时候你的运行目录并没有变!

如果想拿该MDB目录下的文件则应该如此:

 

Shell "cmd /k dir " & CurrentProject.Path & " /w"



总记录:2篇  页次:1/1 9 1 :