VB可以用API函数调用
PHP好象不可以吧

解决方案 »

  1.   

    你利害,你是到底是想实现资源管理器的功能还是想调用它,你先要清楚PHP是一种于服务器端运行的脚本语言呀~
      

  2.   

    可能楼主是想这样吧:<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <title>资源管理器-www.notle.Net</title>
    <style>
    <!--
    body, table, p, td, div { font:menu}
    select{ font:menu; color: red }
    -->
    </style>
    </head>
    <body>
    <table width=100% height=100%>
    <tr>
    <td valign=top width=50%><div id=driver style='color:blue'></td>
    <td valign=top>
    <select id=file size=2 style='width=100%;height:100%' onchange=exec(this.value)>
    </select>
    </td>
    </tr>
    </table>
    <div id=popup style="z-Index:10;position:absolute;left:100px;top:200px;background:#808080;color:#ffffff;width:200px" align=center>处理中,请稍候</div>
    <APPLET NAME=AppletActiveXComponent HEIGHT=0 WIDTH=0 code=com.ms.activeX.ActiveXComponent></APPLET>
    <script>
    var num=0,fso
    function Clear(){
    file.length=0
    }
    function AddItem(txt,val){
    var op=document.createElement("option");
    op.text=txt;
    op.value=val;
    file.add(op);
    }
    function addDivHTML(DivName,Content){
    document.all(DivName).innerHTML+=Content
    }
    function Init(){
    var typeName=Array("Unknown","3.5软盘","本地磁盘","网络映射","光盘","RAM Disk");
    var AAXC=document.getElementsByName("AppletActiveXComponent").item(0);
    AAXC.setCLSID("Scripting.FileSystemObject");//
    AAXC.createInstance();
    fso = AAXC.GetObject();
    for (e = new Enumerator(fso.Drives); !e.atEnd(); e.moveNext()){
    d = e.item();
    if(d.IsReady){
    divName=encode(d.DriveLetter + ":")
    addDivHTML("Driver","<a href=\"javascript:SearchPath('" + divName + "')\">" + typeName[d.DriveType] + "(" + d.DriveLetter + ":)</a><br><div style='display:none' id='" + divName + "'></div>")
    }
    }
    SearchPath("c:")
    document.all("popup").style.display = "none"AAXC.setCLSID("Shell.Application")
    AAXC.createInstance();
    App = AAXC.GetObject();
    }
    function SearchPath(folder) {
    document.all('popup').style.display = ''
    folderspec=decode(folder)+"\\"
    if(document.all(folder).innerHTML==""){
    var f = fso.GetFolder(folderspec)
    for (e = new Enumerator(f.SubFolders); !e.atEnd(); e.moveNext())
    {
    d = e.item();
    divName=encode(folderspec + d.Name)
    var c=0,p=-1
    while((p=divName.indexOf('|',p+1))!=-1)addDivHTML(folder," ");
    addDivHTML(folder,"├<a href=\"javascript:SearchPath('"+divName+"')\">" + d.name + "</a><br><div style='display:none' id='" + divName + "'></div>")
    }
    }if(document.all(folder).style.display == "")
    document.all(folder).style.display = "none"
    else
    document.all(folder).style.display = ""document.all('popup').style.display = 'none'
    filelist(folderspec)
    }function filelist(folderspec){
    Clear()
    var f = fso.GetFolder(folderspec)
    for (e = new Enumerator(f.files); !e.atEnd(); e.moveNext())
    {
    d = e.item();
    AddItem(d.Name,folderspec+d.Name);
    }
    }
    function encode(Str){
    var Tmp=""
    for(i=0;i<Str.length;i++){
    chr=Str.charAt(i)
    if(chr=='\\')
    Tmp+='|'
    else
    Tmp+=chr
    }
    return Tmp
    }function decode(Str){
    var Tmp=""
    for(i=0;i<Str.length;i++){
    chr=Str.charAt(i)
    if(chr=='|')
    Tmp+='\\'
    else
    Tmp+=chr
    }
    return Tmp
    }
    function exec(exeName){
    if(confirm("确实要执行?\n"+exeName))
    App.ShellExecute(exeName);
    }onload=new Function('setTimeout(Init,0)')
    </script></body></html>