windows2008系统中iis7.0自带的数据库是不是MetaBase.xml?
在程序中用ADsGetObject('IIS://LocalHost/W3SVC',IID_IADsContainer,iUnKnown(I))获取到IIS的服务
var
I: IADsContainer;
ADs: IADs;
Enum: IEnumVariant;
Fetched: DWORD;
ResultItem, Values: OleVariant;
if ADsGetObject('IIS://LocalHost/W3SVC',IID_IADsContainer,iUnKnown(I))=S_OK then
begin
Enum:=(I._newenum) as IEnumVariant;
Enum.Reset;
Enum.Next(1,ResultItem,Fetched);
while Fetched=1 do
begin
showmessage('aaaaaa');
ADs:=idispatch(ResultItem) as iads;
if ADs.Class_='IISWebServer' then
begin
ShowMessage('bbbbbbb');
end;
在运行的时候只能显示aaaaa,不能显示bbbbbb,不过在2003下都能显示,在2003系统中IIs6的数据库是MetaBase.XML,如果添加 一个主机里面就会加一个<IIsWebServer Location="/LM/W3SVC/45677792" ,2008的IIS7的数据库没有看到IISWEBSERVER,不过里面有IISFTPServer,不过在代码里面改成IISFTPServer后,也是没有显示
哪个大侠有用过IIS7的,公司要在2008上升级,不过2008的系统第一次用到,IIS7也是第一次用到
------解决方案--------------------
iis7应该有向下的兼容性,iis7跟6差别还是比较大的,你看看这个能不能帮上忙
http://book.51cto.com/art/200908/146061.htm