我想用jsp打开本地的一个exe,现在遇到两个问题
1.我想在那个exe的当前目录打开这个exe,而不是在默认路径打开这个exe,怎样做呢?
2.我在注册表获得的字符串是不带"\\",而是"\",如 c:\windows\a.exe ,但obj.exec执行必须要 c:\\windows\\a.exe,也就是转移符的问题,怎样把 c:\windows\a.exe字符转成 c:\\windows\\a.exe,让obj.exec可以执行?
代码是:
<script language=javascript> 
function exec() 

var obj = new ActiveXObject("WScript.Shell"); 
var s="HKEY_LOCAL_MACHINE\\SOFTWARE\\a\\InstallDir";
var sNic = obj.RegRead(s); 
sNic=sNic+"\a.exe"; 
alert(sNic);   //c:\windows\a.exe
obj.exec(sNic); //出错,必须要c:\\windows\\a.exe

解决方案 »

  1.   

    第一个问题解决了,obj.CurrentDirectory=“ “,就可以在某个目录运行了
    第二问题还没有解决
      

  2.   

    LZ是在JS里调用吧?如果解决c:\windows\a.exe字符转成 c:\\windows\\a.exe就可以的话,那么把\替换成\\不就可以了么?
      

  3.   

    对这个“WScript.Shell”不了解·LZ问一问孟老大或去MSDN查一查
      

  4.   

    \这个反斜杠是要转义的。\\这个才代码javaScript中的\
      

  5.   

    哎,现在的人啊,都没有分清楚什么是什么啊。这里哪有JSP的影子啊???
    楼主把字符串替换一下就可以了啊。
    <script language=javascript> 
    function exec() 

    var obj = new ActiveXObject("WScript.Shell"); 
    var s="HKEY_LOCAL_MACHINE\\SOFTWARE\\a\\InstallDir"; 
    var sNic = obj.RegRead(s); 
    sNic=sNic+"\a.exe"; sNic=sNic.replace("\","\\");
    alert(sNic);  //c:\windows\a.exe 
    obj.exec(sNic); //出错,必须要c:\\windows\\a.exe 

      

  6.   


    <script language=javascript> 
    function exec() 

    var obj = new ActiveXObject("WScript.Shell"); 
    var sNic = obj.RegRead(" HKEY_LOCAL_MACHINE\\SOFTWARE\\a\\InstallDir\\a.exe"); obj.exec(sNic); 
    }
    http://msdn.microsoft.com/en-us/library/x05fawxd(VS.85).aspx