WshShell.Run实际上是执行的DOS命令行,dos不支持空格所以可以用如下办法解决
DOS下命令中空格处理
如果需要在dos下查看带有空格的文件夹(如Documents and settings,Program files等文件夹),可以有下面两种处理方法:1、给文件夹加引号。如C:/>cd c:\"documents and settings"这样的好处是多长的文件名都可以全部显示出来。2、由于一般情况下DOS系统只支持8.3格式的文件名,因此在DOS下遇到长文件名的文件夹时,取前面6位,然后在后面加上一个~号和数字1。你可以输入C:/>cd c:\docume~1 进入Documents and settings文件夹。当截取前面的6个字母之后出现重复时,可以将1改为2,依此类推。
<script language=javascript>
var WshShell=new ActiveXObject("WScript.Shell") ;
WshShell.Run('c:\"ab cd.txt"');
</script>