CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

在IIS中的虚拟目录怎样用命令来创建虚拟目录的应用程序名称

楼主Sorder(要才没才,要貌没貌,你还愿意嫁给我吗)2005-11-17 14:10:51 在 Delphi / VCL组件开发及应用 提问

如题,请各位帮忙阿 问题点数:20、回复次数:8Top

1 楼constantine(飘遥的安吉儿)回复于 2005-11-17 15:09:33 得分 20

在Delphi中用ADSI创建IIS的虚拟目录  
     
  2004-04-05   18:05:14    
  先引入类型库(Project|Import   Type   Library)adsiis.dll、iisext.dll和activeds.tlb,新建一个单元,声明:  
  unit   ActiveDs;  
  interface  
  function   ADsGetObject(const   PathName:   WideString;   const   GUID:   TGUID;   out   I:   IUnknown):   HRESULT;   stdcall;  
  implementation  
  function   ADsGetObject;   external   ’activeds.dll’   name   ’ADsGetObject’;  
  end.  
   
  procedure   TForm1.btn2Click(Sender:   TObject);  
  var  
  I:   IADsContainer;  
  ADs:   IADs;  
  begin  
  if   ADsGetObject('IIS://localhost/w3svc',   IID_IADsContainer,   IUnknown(I))   =   S_Ok   then  
  begin  
      ADs   :=   IADs(I.GetObject('IIsWebServer',   '1'));  
      if   ADs.QueryInterface(IID_IADsContainer,   I)   =   S_OK   then  
      begin  
              ADs   :=   IADs(I.GetObject('IIsWebVirtualDir',   'Root'));  
              if   ADs.QueryInterface(IID_IADsContainer,   I)   =   S_OK   then  
              begin  
              ADs   :=   IADs(I.Create('IIsWebVirtualDir',   'DelphiTest'));  
              ADs.Put('AccessRead',   'True');  
              ADs.Put('Path',   'F:\My   Documents\Indy9Demos_26Oct04\Indy9Demos\HTTPServer\web');  
              ADs.SetInfo;  
              end;  
      end;  
  end;  
  end;  
   
  procedure   TForm1.btn3Click(Sender:   TObject);  
  var  
      Disp:   IDispatch;  
  begin  
      Disp   :=   IISNamespace.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;  
   
  procedure   TForm1.btn4Click(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;Top

2 楼Sorder(要才没才,要貌没貌,你还愿意嫁给我吗)回复于 2005-11-18 13:20:24 得分 0

首先,非常感谢   constantine(飘遥的安吉儿)    
  可是我的问题依然没有解决,用命令来创建虚拟目录的应用程序名称  
  上述过程是可以建立虚拟目录了,但是这个目录属性应用程序设置处我还不能建立应用程序名称,  
  请constantine(飘遥的安吉儿)    
  再帮帮我,谢谢Top

3 楼ljz9425(阿九)回复于 2005-11-18 17:20:51 得分 0

不错  
  Top

4 楼Sorder(要才没才,要貌没貌,你还愿意嫁给我吗)回复于 2005-11-19 13:13:42 得分 0

难道我给20分太少了Top

5 楼constantine(飘遥的安吉儿)回复于 2005-11-19 13:28:37 得分 0

等等我试试看,我一开始不清楚你说的应用程序名称是什么,刚才看了一下,我看看行不行先Top

6 楼constantine(飘遥的安吉儿)回复于 2005-11-19 13:34:04 得分 0

procedure   TForm1.btn1Click(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',   'AppTest');  
      VDir.AccessRead   :=   True;  
      VDir.Path   :=   'C:\DELPHI';  
      VDir.AppCreate(True);   //这样就可以让iis自动创建了,不过名字留空的  
      VDir.SetInfo;  
  end;Top

7 楼constantine(飘遥的安吉儿)回复于 2005-11-19 13:58:22 得分 0

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',   'VariantTest3');  
      VDir.AccessRead   :=   True;  
      VDir.Path   :=   'C:\DELPHI';  
      VDir.AppCreate(True);//这样就可以让iis自动创建了,不过名字留空的  
      VDir.AppFriendlyName:='test';     //加上这个就可以自己添加名字了,名字自己修改吧  
      VDir.SetInfo;  
  end;Top

8 楼Sorder(要才没才,要貌没貌,你还愿意嫁给我吗)回复于 2005-11-21 11:35:20 得分 0

非常感谢constantine(飘遥的安吉儿)    
  Top

相关问题

  • 在IIS中的虚拟目录怎样用命令来创建虚拟目录的应用程序名称
  • 吐血问(IIS虚拟目录放在共享目录)是否支持ASPNET应用程序?详情!(四百分)
  • 新建IIS应用程序出错
  • 应用程序日志中IIS出错
  • 求救!如何把SQL命令从前端应用程序传给应用程序服务器
  • IIS配置错误:导致该错误的原因可能是在 IIS 中没有将虚拟目录作为应用程序进行配置。在线等------------------------------------------
  • VFP用什么命令退出应用程序啊!
  • 如何取得应用程序的虚拟目录路径?
  • 导致该错误的原因可能是在 IIS 中没有将虚拟目录作为应用程序进行配置。
  • 知情者请止步:IIS应用程序和ASP

关键词

  • 虚拟
  • iis
  • dll
  • adsgetobject
  • iadscontainer
  • 虚拟目录
  • iads
  • ads
  • iid
  • activeds

得分解答快速导航

  • 帖主:Sorder
  • constantine

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo