Delphi中用Adsi创建IIS虚拟目录_Delphi

  • 内容
  • 评论
  • 相关

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

http://www.gaodaima.com/65530.htmlDelphi中用Adsi创建IIS虚拟目录_Delphi

 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;

欢迎大家阅读《Delphi中用Adsi创建IIS虚拟目录_Delphi》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码

原创文章,转载请注明: 转载自搞代码

本文链接地址: Delphi中用Adsi创建IIS虚拟目录_Delphi

微信支付二维码

微信 赏一包辣条吧~

支付宝支付二维码

支付宝 赏一听可乐吧~

评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注