用VC控制iis的属性

王朝vc·作者佚名  2006-11-26
窄屏简体版  字體: |||超大  

Author:zfive5(zidong)

Email :zfive5@yahoo.com.cn

需求

用VC修改IIS的属性如设为可以匿名访问将默认网站下的主目录路径C:\Inetpub\wwwroot 在VC程序里面可以更改成任意路径.

实现

看到masterz在纯vc编写控制IIS属性代码的文章(url:http://topic.csdn.net/t/20030224/15/1460500.html),总感觉有些麻烦,可能是用vb两年来的缘故吧,想了一个懒人的方法:“编写vbscript脚本,vc调用scriptcontrol控件在解析脚本了。”

还记得两年前用msscriptcontrol 解决过一个网络问题!

代码如下:

void CTestDlgDlg::OnBnClickedOk()

{

// TODO: 在此添加控件通知处理程序代码

//OnOK();

char szBUF[1024]=""

"Function ChangeWebPath(computer ,webname ,path ) \r\n"

" On Error Resume Next \r\n"

" Dim vRoot,websvc, site \r\n"

" ChangeWebPath=-1 \r\n"

" Set websvc = GetObject(\"IIS://\"&computer&\"/W3svc\") \r\n"

" if (Err <> 0) Then exit function \r\n"

" for each site in websvc \r\n"

" if site.class = \"IIsWebServer\" then \r\n"

" if site.ServerComment = webname Then \r\n"

" Set vRoot = site.GetObject(\"IIsWebVirtualDir\", \"Root\") \r\n"

" vRoot.Path = path \r\n"

" vRoot.SetInfo \r\n"

" ChangeWebPath=0 \r\n"

" exit function \r\n"

" end If \r\n"

" end if \r\n"

" next \r\n"

" End function \r\n";

CString szScript1="";

szScript1.Format("%s",szBUF);

CString szScript2="z5=ChangeWebPath(\"127.0.0.1\",\"默认网站\",\"c:\\\") ";

szScript1+=szScript2;

m_iis.put_Language("VBScript");

m_iis.AddCode(szScript1);

VARIANT result= m_iis.Eval("z5");

if(result.iVal==0)

{

AfxMessageBox("Success");

}

else

{

AfxMessageBox("Fail");

}

return;

}

脚本参照C:\Inetpub\AdminScripts\*.vbs编写。

总体要比纯vc编写简单的多,而且几乎同样的代码,完全可以编写出控制iis其他属性的程序!只需编写脚本!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航