Delphi 控制IIS,检测、增加、删除虚拟目录


本文整理自网络,侵删。

 //在DELPHI中用ADSI来控制IIS,检测、增加、删除虚拟目录 
////////// //////////
//以下程序均从大富翁及网上所得,非本人所原创,感谢原作者
//本人只是觉得有用,将其整理,希望对大家有用
//英腾软件:QQ:815825,欢迎交流编程知识
////////// //////////

//删除虚拟目录应用程序名
function DeleteVirtualDirApp(strVirtualDir: string): Boolean;
var
WebSite, WebServer, WebRoot, vdir: Variant;
begin
Result := True;
try
WebSite := CreateOleObject('IISNamespace');
WebSite := WebSite.GetObject('IIsWebService', 'localhost/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', '1');
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
vdir := WebRoot.GetObject('IIsWebVirtualDir', strVirtualDir);
vdir.AppDelete;
vdir.SetInfo;
except
Result := False;
end;

end;

//删除虚拟目录
function DeleteVirtualDir(strVirtualDir: string): Boolean;
var
WebSite, WebServer, WebRoot, vdir: Variant;
begin
Result := True;
try
WebSite := CreateOleObject('IISNamespace');
WebSite := WebSite.GetObject('IIsWebService', 'localhost/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', '1');
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
WebRoot.Delete('IIsWebVirtualDir', strVirtualDir);
except
Result := False;
end;
end;

{检测是否有虚拟目录}
function CheckVirtualDir(const strVirtualDir: string): Boolean;
var
WebSite, WebServer, WebRoot, vdir: Variant;
begin
Result := True;
try
WebSite := CreateOleObject('IISNamespace');
WebSite := WebSite.GetObject('IIsWebService', 'localhost/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', '1');
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
WebRoot.GetObject('IIsWebVirtualDir', strVirtualDir);
except
Result := False;
end;
end;

//建立虚拟目录
function CreateVirtualDir(const strVirtualDir, strDir, strAppName: string): Boolean;
var
WebSite, WebServer, WebRoot, vdir: Variant;
begin
Result := True;
try
WebSite := CreateOleObject('IISNamespace');
WebSite := WebSite.GetObject('IIsWebService', 'localhost/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', '1');
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
vdir := WebRoot.Create('IIsWebVirtualDir', strVirtualDir);
vdir.AccessRead := True;

vdir.AccessScript := True; //执行许可为纯脚本
vdir.DefaultDoc := 'index.aspx,index.asp'; //默认文档
vdir.EnableDirBrowsing := False;
vdir.AppFriendlyName := strAppName; //应用程序名
vdir.Path := strDir;
vdir.AppCreate(True); //如果没有这句的话,虚拟目录就要人为的手工创建应用程序名
vdir.SetInfo;
except
Result := False;
end;
end;

相关阅读 >>

Delphi求数组最大\最小值

Delphi实现关闭指定进程,自身防杀

Delphi 获取系统的硬盘分区及使用信息

Delphi 官方 processmessages 用法代码例子

Delphi中利用钩子实现qq聊天窗口的修改

Delphi区分汉字和字母的函数

Delphi 关于使用access中带参数的查询的用法

Delphi 将程序加裁到启动项

Delphi请求http接口中文乱码问题

Delphi access数据库密码的mdb的访问报错“无法启动应用程序,或是已被其他用户已独占方式打开”

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...