蝈蝈俊.net

-- 用随笔来记录自己的技术感触
随笔 - 673, 评论 - 4328, 引用 - 276

导航

关于

记录自己的技术心得

标签

每月存档

最新留言

  • Dtxdthid
    Very Good Site <a href=" http://www.wikio.com/user/tujebisao/bio ">c...
    by Dtxdthid(匿名) on 2010/3/19 19:16:18
  • Iwdwzwrb
    Very funny pictures <a href=" http://www.wikio.com/user/tujebisao/bio "&...
    by Iwdwzwrb(匿名) on 2010/3/19 18:21:12
  • Eebvfxax
    Very Good Site <a href=" http://www.wikio.com/user/isufaifameu/bio "&gt...
    by Eebvfxax(匿名) on 2010/3/19 17:46:52
  • Bbymerhc
    Very interesting tale <a href=" http://www.wikio.com/user/isufaifameu/bio "...
    by Bbymerhc(匿名) on 2010/3/19 16:51:18
  • Fhpjpshb
    Very funny pictures <a href=" http://www.wikio.com/user/hupofugomia/bio "&a...
    by Fhpjpshb(匿名) on 2010/3/19 16:16:20
  • Wgugqqku
    Very Good Site <a href=" http://www.wikio.com/user/hupofugomia/bio "&gt...
    by Wgugqqku(匿名) on 2010/3/19 15:22:56
  • Mtrpkxnr
    <a href=" http://www.wikio.com/user/lyepylatytof/bio ">sex free lol...
    by Mtrpkxnr(匿名) on 2010/3/19 14:47:56
  • Kshngzfl
    It's funny goodluck <a href=" http://www.wikio.com/user/lyepylatytof/bio "&...
    by Kshngzfl(匿名) on 2010/3/19 13:51:32
  • Whaxznox
    this post is fantastic <a href=" http://www.wikio.com/user/biukyera/bio "&a...
    by Whaxznox(匿名) on 2010/3/19 13:16:55
  • Bhtmssbu
    Excellent work, Nice Design <a href=" http://www.wikio.com/user/biukyera/bio &qu...
    by Bhtmssbu(匿名) on 2010/3/19 12:21:10

广告

 
我们如果需要编程控制企业服务的行为,则可以利用 COMAdminCatalog 来进行操作。
使用 COMAdminCatalog  之前,需要增加一个 Com 引用 COM +1.0 Admin Type Library ,如下图:

添加 COM +1.0 Admin Type Library 的引用 

下面就简单的实现一个功能,遍历每个COM+ 应用,并显示出他们的一些信息。
同时,如果找到你指定的 COM+ 应用,则设置它一直运行(Leave running when idle)。
using COMAdmin;    


COMAdminCatalog ca = new COMAdminCatalogClass();
COMAdminCatalogCollection cacc = 
    (COMAdminCatalogCollection)ca.GetCollection("Applications");
cacc.Populate();
foreach (COMAdminCatalogObject cac in cacc)
{
    Console.WriteLine("**************");
    Console.WriteLine(cac.Name);
    Console.WriteLine(cac.Key);
    Console.WriteLine(cac.Valid);

    string[] nameArr = new string[] { 
            "Identity",
            "ID",
            "Description",
            "Activation",
            "Changeable",
            "Deleteable",
            "Name",
            "ApplicationAccessChecksEnabled",
            "AccessChecksLevel",
            "RunForever",
            "ApplicationAccessChecksEnabled",
        };

    foreach (string name in nameArr)
    {
        bool b2 = cac.IsPropertyWriteOnly(name);
        bool b1 = cac.IsPropertyReadOnly(name);
        object o = string.Empty;
        if (!b2) o = cac.get_Value(name);
        Console.WriteLine(string.Format("{0} ** ReadOnly {1} WriteOnly {2}  = {3}{4}",
            name, b1, b2, o, Environment.NewLine));
    }

    if (cac.Name.ToString() == "您自己的企业服务的名字")
    {
        cac.set_Value("RunForever", true);
        cacc.SaveChanges();
    }
}

    

上述代码的设置效果,等同于你通过以下步骤的设置:

在 Component Services 的 Com+ 应用列表中  选择你需要处理的企业服务。右键属性窗口中,选择 Advanced 属性页。
然后在 Server Process Shutdown 中,单选 Leave running when idle。

当然,上面只是一个简简单单的一项设置的变化。其实你可以有很多属性都可以按照上述代码进行变更。

每个字符串对应企业服务的那个属性,你可以在以下地址查询到:

http://msdn2.microsoft.com/en-gb/library/ms686107.aspx

http://msdn2.microsoft.com/en-gb/library/ms687763.aspx

 

参考资料:

http://msdn.microsoft.com/library/default.asp?url=/msdnmag/issues/0900/instincts/toc.asp
Automating COM+ Administration

http://blog.robinzhong.com/index.php/archives/2006/09/28/124.html
在.NET中使用COMAdmin组件管理COM+组件

http://www.csharphelp.com/archives3/archive482.html
COM+ Automation using .NET C#

http://www.codeproject.com/com/complus_admin.asp
Programmatic administration of COM+ Applications with the COM+ Admin objects in VC++

打印 | 张贴于 2006-12-08 17:44:00 | Tag:ServicedComponent(企业服务)

留言反馈

#回复: 编程控制企业服务的行为 编辑
上述代码你可以集成到 企业服务的 安装类中。


2007-05-30 16:39:00 | [匿名:db661音乐站]
#回复: 编程控制企业服务的行为 编辑
你说你说了不该说的话,做了不 该做的事,没是的,我不介意,你还说什么呢?????
2006-12-15 09:54:00 | [匿名:词典中的精华]
#回复: 编程控制企业服务的行为 编辑
上述代码你可以集成到 企业服务的 安装类中。

这样执行 installutil 的时候,就会自动设置一些你需要的配置。

继而很方便的可以在项目的生成事件中,部署和配置 COM+
2006-12-08 17:46:00 | [匿名:ghj1976]
对不起,目前本随笔不允许发表新评论.

Powered by: Joycode.MVC引擎 0.5.2.0