php 控制iis 和 创建系统用户代码

<?php
/*
#PHP控制IIS的相关属性
#收集人:简单
*/
/*站点属性和使用方法*********************************************************/
  $LocalHostObject = New Com ("IIS://localhost/w3svc") ;
  $Site = $LocalHostObject->Create("IIsWebServer",站点标识符);
 //站点类型
  $Site->Class;

  //站点名称
  $Site->ServerComment;
 
  //站点绑定的IP:端口:域名
  $Site->ServerBinDings;

  //站点标识符
  $Site->Name;

  //获取站点主目录
  $Site->GetObject("IIsWebVirtualDir","ROOT");
  $Site->Path;

  //匿名访问时所使用的帐号
  $Site->AnonymousUserName;

  //匿名访问时所用帐号的口令
  $Site->AnonymousUserPass;

  //日志文件的目录
  $Site->LogFileDirectory;

  //是否允许FrontPage扩展
  $Site->FrontPageWeb = True;

  //站点的类型
  $Site->KeyType = "IIsWebServer";

  //站点描述
  $Site->bewrite;

  //允许使用的带宽,1024=1K,如果是100K的话等于102400
  $iissite->MaxBandwidth = '102400';

  //允许IIS同时多少个并发数,也就是平常说的IIS连接数
  $iissite->MaxConnections = '100';

  //是否开通日志
  $iissite->LogType = "0";  //0为不开通,1为开通W3C格式的日志

  //指定404错误,Url为当前站点的文件
  $iissite->HttpErrors = "404,0,Url,/404.htm";

  //指定404错误,FILE为当前服务器绝对路径的文件
  $iissite->HttpErrors = "404,0,FILE,/404.htm";

  //指定脚本映身,有关这下面的扩展名映射可以查看默认网站的一些,复制过来即可,下面是用PHP做的例子
  $iissite->ScriptMaps = ".php,E:softphp-5.2.3-Win32(1)php5isapi.dll,5,Get,HEAD";

 /*站点的默认文档*********************************************************/

  //是否允许默认文档
  $Site->EnableDefaultDoc = True;

  //站点的默认文档
  $Site->DefaultDoc = "index.php,index.html";  //以英文标点,隔开

 /*站点的运行状态*********************************************************/

  $SiteStatus = New Com ("IIS://LocalHost/w3svc/".$ServerID);

  //站点运行状态
  $SiteStatus->Status;
  
   //运行状态返回以下几个整数值:
  
   //1代表网站运行状态为“正在启动”
   $SiteStatus->Status = 1;

   //2代表网站运行状态为“已经启动”
   $SiteStatus->Status = 2;

   //3代表网站运行状态为“正在停止”
   $SiteStatus->Status = 3;

   //4代表网站运行状态为“已经停止”
   $SiteStatus->Status = 4;

   //5代表网站运行状态为“正在暂停”
   $SiteStatus->Status = 5;

   //6代表网站运行状态为“已经暂停”
   $SiteStatus->Status = 6;

   //7代表网站运行状态为“正在继续”,就是暂停后的继续运行
   $SiteStatus->Status = 7;

   //-1代表出错
   $SiteStatus->Status = -1;

  //启动站点
  $SiteStatus->Start;
 
  //停止站点
  $SiteStatus->Stop;

  //继续站点,就是暂停后的继续运行
  $SiteStatus->Continue;

  //暂停站点
  $SiteStatus->Pause;

 /*站点的应用程序设置*********************************************************/

  $iisdir = $Site->Create("IIsWebVirtualDir","ROOT");


  //设置站点的应用程序可读,就是什么也不能执行
  $iisdir->AccessRead = True;

  //设置站点的应用程序可执行,只包括脚本,不包括执行文件
  $iisdir->AccessScript = True;

  //设置站点的WEB目录可写,这个很危险
  $iisdir->AccessWrite = True;

  //设置站点的应用程序可执行,包括脚本和执行文件
  $iisdir->AccessExecute = True;

  //设置站点的目录
  $iisdir->Path = "d:webuserwebdir";

  //创建新的应用程序
  $iisdir->AppCreate(True) ;  //在这里不能 = True;,只能用(True)

  //允许父路径,也就是允许.
  $iisdir->AspEnableParentPaths = True;

 /*应用程序池相关设置*********************************************************/

  $appList = New Com ("IIS://Localhost/w3svc/AppPools");

  //列出应用程序池的名称
  $appList->Name;

  //列出应用程序池的状态
  $appList->AppPoolState;

   //运行状态返回以下几个整数值:
  
   //1代表应用程序池运行状态为“正在启动”
   $appList->Status = 1;

   //2代表应用程序池运行状态为“已经启动”
   $appList->Status = 2;

   //3代表应用程序池运行状态为“正在停止”
   $appList->Status = 3;

   //4代表应用程序池运行状态为“已经停止”
   $appList->Status = 4;

   //5代表应用程序池运行状态为“正在暂停”
   $appList->Status = 5;

   //6代表应用程序池运行状态为“已经暂停”
   $appList->Status = 6;

   //7代表应用程序池运行状态为“正在继续”,就是暂停后的继续运行
   $appList->Status = 7;

   //-1代表出错
   $appList->Status = -1;

 /*WinNT用户和密码相关设置*********************************************************/

  $usernameobj = New Com("WinNT://iim");

  //创建一个系统用户
  $user = $usernameobj->Create("user",$UserName);

  //设置用户密码
  $user->SetPassword($UserPass);

  //设置用户全名
  $user->FullName = "用户全名";

  //设置用户说明
  $user->Description = "用户说明";

  //设置用户密码永久正确
  $user->UserFlags = &H10000

  //设置用户下次登入时须变更密码
  $user->UserFlags = &H20000

  //设置使用者不得变更密码
  $user->UserFlags = &H0040

  //设置用户帐户暂时停用
  $user->UserFlags = &H0002

  //以上动作创建一个系统用户

 /*执行相关动作*********************************************************/

  //执行以上的动作,但在网站运行状态里边的start,stop,pause,continue这四个动作中无须执行->SetInfo();
  $Object->SetInfo();  //$Object为你所创建的组件名称

?>