网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
Delphi中用Adsi创建IIS虚拟目录
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式

先引入类型库(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.

方法一(参照C++)、

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''));

  ShowMessage(ADs.ADsPath);

  if ADs.QueryInterface(IID_IADsContainer, I) = S_OK then

  begin

   ADs := IADs(I.GetObject(''IIsWebVirtualDir'', ''Root''));

   ShowMessage(ADs.ADsPath);

   if ADs.QueryInterface(IID_IADsContainer, I) = S_OK then

   begin

    ADs := IADs(I.Create(''IIsWebVirtualDir'', ''DelphiTest''));

    ADs.Put(''AccessRead'', ''True'');

    ADs.Put(''Path'', ''c:\Temp'');

    ADs.SetInfo;

   end;

  end;

 end;

end;

方法二(使用接口)、

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;

方法三(使用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;

  • 上一篇资讯: 提取win98上网密码
  • 下一篇资讯: 在窗口标题区添加按钮
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号