下面是IIS 5.0 监控程序的部分代码,实现一个网站对应一个进程,既网站对应一个Com+应用程序,但是出现一个问题,在Com+应用程序添加 Components 组件时出错(访问一个或更多对象时,出现了错误 - ErrorInfo 集合有详细信息 (异常来自 HRESULT:0x80110401)).请问这个功能要如何实现????//Add Applications
ICOMAdminCatalog catalog = (ICOMAdminCatalog)new COMAdminCatalog();
ICatalogCollection applications = (ICatalogCollection)catalog.GetCollection("Applications");
applications.Populate();
ICatalogObject application = null;
application = (ICatalogObject)applications.Add();
application.set_Value("3GigSupportEnabled",false);
application.set_Value("AccessChecksLevel",0);
application.set_Value("Activation", 1);
application.set_Value("ApplicationAccessChecksEnabled",false);
//application.set_Value("ApplicationProxy",false);
//c.set_Value("ApplicationProxyServerName",false);
application.set_Value("Authentication", 4);
application.set_Value("AuthenticationCapability", 64);
application.set_Value("Changeable", true);
//c.set_Value("CommandLine");
application.set_Value("CreatedBy", "Microsoft Internet Information Services");
application.set_Value("CRMEnabled", false);
//c.set_Value("CRMLogFile");
application.set_Value("Deleteable", true);
//c.set_Value("Description");
application.set_Value("EventsEnabled", true);
//c.set_Value("ID");
//application.set_Value("Identity", "IWAM_192-168-1-67");
//application.set_Value("Password", "123");
application.set_Value("IsEnabled", true);
//application.set_Value("IsSystem", false);
application.set_Value("Name", strName);
application.set_Value("QueueListenerEnabled", false);
application.set_Value("QueuingEnabled", false);
application.set_Value("RunForever", true);
application.set_Value("ShutdownAfter", 3);
applications.SaveChanges();
foreach (COMAdmin.COMAdminCatalogObject c in applications)
{
string detail = c.Name.ToString();
if (detail.IndexOf(strName) > -1)
{
try
{
catalog.InstallComponent(detail, @"C:\WINNT\system32\inetsrv\wam.dll", "", ""); //add Components
//这一步出错了
//访问一个或更多对象时,出现了错误 - ErrorInfo 集合有详细信息 (异常来自 HRESULT:0x80110401)
}
catch (Exception e) { Console.WriteLine(e.ToString()); }
}
}
Console.WriteLine("OK");
用途是要监控IIS 5.0 各站点的 cpu 和 内存 使用情况
ICOMAdminCatalog catalog = (ICOMAdminCatalog)new COMAdminCatalog();
ICatalogCollection applications = (ICatalogCollection)catalog.GetCollection("Applications");
applications.Populate();
ICatalogObject application = null;
application = (ICatalogObject)applications.Add();
application.set_Value("3GigSupportEnabled",false);
application.set_Value("AccessChecksLevel",0);
application.set_Value("Activation", 1);
application.set_Value("ApplicationAccessChecksEnabled",false);
//application.set_Value("ApplicationProxy",false);
//c.set_Value("ApplicationProxyServerName",false);
application.set_Value("Authentication", 4);
application.set_Value("AuthenticationCapability", 64);
application.set_Value("Changeable", true);
//c.set_Value("CommandLine");
application.set_Value("CreatedBy", "Microsoft Internet Information Services");
application.set_Value("CRMEnabled", false);
//c.set_Value("CRMLogFile");
application.set_Value("Deleteable", true);
//c.set_Value("Description");
application.set_Value("EventsEnabled", true);
//c.set_Value("ID");
//application.set_Value("Identity", "IWAM_192-168-1-67");
//application.set_Value("Password", "123");
application.set_Value("IsEnabled", true);
//application.set_Value("IsSystem", false);
application.set_Value("Name", strName);
application.set_Value("QueueListenerEnabled", false);
application.set_Value("QueuingEnabled", false);
application.set_Value("RunForever", true);
application.set_Value("ShutdownAfter", 3);
applications.SaveChanges();
foreach (COMAdmin.COMAdminCatalogObject c in applications)
{
string detail = c.Name.ToString();
if (detail.IndexOf(strName) > -1)
{
try
{
catalog.InstallComponent(detail, @"C:\WINNT\system32\inetsrv\wam.dll", "", ""); //add Components
//这一步出错了
//访问一个或更多对象时,出现了错误 - ErrorInfo 集合有详细信息 (异常来自 HRESULT:0x80110401)
}
catch (Exception e) { Console.WriteLine(e.ToString()); }
}
}
Console.WriteLine("OK");
用途是要监控IIS 5.0 各站点的 cpu 和 内存 使用情况
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货