用程序设置COM+应用程序的属性。[1]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 eastliangliang 的 blog

 

用程序设置com+应用程序的属性。

今天从别人机器上导出了个代理程序,注册在自己的机器上,在组件服务里查看com+应用程序的属性,发现代理程序有一个属性是可以修改的,就是远程服务器名称,在更改了此名称后,程序中不需要用createremote函数,也可以申请到远程接口指针。可是我们应该给用户一个友好的界面,不能总让用户打开组件服务吧,来,我们写个程序吧。

这次我们只用delphi控件好啦(唉,懒就一个字^_^)

定义三个变量

catacoll:tcomadmincatalogcollection;

cataobj:tcomadmincatalogobject;

comadmincata:tcomadmincatalog;

begin

  comadmincata := tcomadmincatalog.create(self);

  catacoll := comadmincata.getcollection(&applications&);

  catacoll.populate;

  for i := 0 to catacoll.count - 1 do

  begin

    cataobj := catacoll.get_item(i);

    if cataobj.name = 你的应用程序名 then

begin

cataobj.set_value(&applicationproxyservername&,新服务器名);

catacoll.savechanges;            //记着保存修改

break;

    end;

  end;

end;

代码并不长,关键的函数是set_value,函数原型如下:

procedure set_value(const bstrpropname: widestring; retval: olevariant);

关键是这个bstrpropname╠╠属性的名称,字符串类型,到底是什么字符串呢?我翻了一通msdn,还是没找到到底该用什么值,瞎猜了一通也不对。微软就是搞笑,给了一个函数,却不给怎么调用,或许是我笨,没找到。不过笨人也有笨办法,把这些属性值找出来。

本文关键:,COM Delphi,
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top