默认站点---新建---虚拟目录---别名(例:aaa)--实际路径(例:c:\www\img)--如果没有明确默认文挡就打开“浏览”权限。 一切OKhttp://xxx.xxx.xx.xxx/aaa     就是你的虚拟目录

解决方案 »

  1.   

    给你,首先声明,这是copy的 ADSI 对象: IIS: 
        IIsObject 
        IIsLogModules 
              ADsPath : IIS://MachineName/LOGGING 
        IIsWebService Name : W3SVC 
              ADsPath : IIS://MachineName/W3SVC  
              Class : IIsWebService 
              GUID : {8B645280-7BA4-11CF-B03D-00AA006E0975} 
              Parent IIS : //LocalHost 
              Schema IIS : //LocalHost/schema/ 
       IIsMimeMap 
             ADsPath : IIS://MachineName/MIMEMAP   
       IIsWebService 层次
           IIsWebInfo: 
                ADsPath : IIS://MachineName/W3SVC/INFO 
           IIsWebServer 
                ADsPath : IIS://MachineName/W3SVC/N MachineName 是机器名. 
                          比如LocalHost N是机器上IIS开的虚拟站点(域名)的顺序号。
                          第一个站是1,第2个是2 
          IIsFilters 
               ADsPath : IIS://MachineName/W3SVC/Filters 或是 
                        IIS://MachineName/W3SVC/N/Filters N是IIS上虚拟站点的顺序号  
     
      在IIS里添加一个虚拟目录的代码例子你可以到 搜索引擎里
      输入 ADSI 就可以找到相关连接。 不过国内的这个例子都是抄来抄去。都是同一个
      例子。关键是要摸准上面的关系。 也就是GETOBJECT时的顺序.
     
      

  2.   

    不知这个这个家伙是不是在玩病毒?一想到用程序处理IIS我第一印象就是病毒,嘻!
      

  3.   

    rwq_(风云浪子):我可不会编病毒。
      

  4.   

    oocoolie(苦力)說的差不多,我有個同事去年做過,msdn里應該有詳細的例子。
      

  5.   

    procedure TForm3.BitBtn4Click(Sender: TObject); 
    var 
      Disp: IDispatch; 
    begin 
      Disp := IISNamespace1.GetObject('IIsWebService', 'localhost/w3svc'); 
      Disp := (Disp as IADsContainer).GetObject('IIsWebServer', '1'); 
      Disp := (Disp as IADsContainer).GetObject('IIsWebVirtualDir', 'Root'); 
      Disp := (Disp as IADsContainer).Create('IIsWebVirtualDir', 'DelphiADSITest'); 
      (Disp as IADs).Put('AccessRead', 'True'); 
      (Disp as IADs).Put('Path', 'c:\ADSITest'); 
      (Disp as IADs).SetInfo; 
    end; 
     
    2、使用Variant(就是类似VB和ASP的方法) 
    procedure TForm2.BitBtn1Click(Sender: TObject); 
    var 
      WebSite, WebServer, WebRoot, VDir: Variant; 
    begin 
      WebSite := CreateOleObject('IISNamespace'); 
      WebSite := WebSite.GetObject('IIsWebService', 'localhost/w3svc'); 
      WebServer := WebSite.GetObject('IIsWebServer', '1'); 
      WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root'); 
      VDir := WebRoot.Create('IIsWebVirtualDir', 'VariantTest'); 
      VDir.AccessRead := True; 
      VDir.Path := 'C:\Test'; 
      VDir.SetInfo; 
    end; 
     
    详细内容请看 
    http://www.gislab.ecnu.edu.cn/delphibbs/DispQ.asp?LID=468148