MTS/COM+组件中该怎样使用全局变量? ( 积分: 100 )

  • 主题发起人 主题发起人 Shuzi
  • 开始时间 开始时间
S

Shuzi

Unregistered / Unconfirmed
GUEST, unregistred user!
比如在公用单元中定义了一个变量V:=100,组件中的一个函数将它设为了200,这样另一个客户进来也认它的200了,我希望每个客户进来都只认它的100,有没有办法实现?
我以为事务可以实现,但折腾了半天也不行,请高手指点一下,多谢!
 
比如在公用单元中定义了一个变量V:=100,组件中的一个函数将它设为了200,这样另一个客户进来也认它的200了,我希望每个客户进来都只认它的100,有没有办法实现?
我以为事务可以实现,但折腾了半天也不行,请高手指点一下,多谢!
 
居然没有人回答
 
这是全局变量与局部变量的作用区域问题
你可以通过引用这个全局的V变量的值,不要直接改变它
 
要是能不改变当然就不存在这个问题了
我的意思是:类似全局变量的东西在COM+中有没有什么机制将它们在各个线程间分离开来
 
那就不是全局变量了,你在每个COM+对象设一个成员变量,
在OnCreate事件中赋值不就行了。
 
这么说就是没有办法了
我的情况是全局变量是在另一个BPL中,而我没有它的源程序,就算有,改动也是不太可能的,因为BPL中很多函数都是依赖天那些变量
其实我的问题就是:在一个COM+实例正在执行公共BPL中的功能时,另一个实例也起来了,并且也要执行相同的功能,这样公共变量就有冲突了
我是第一次折腾MTS/COM+,好多东西不太明白,但感觉COM+应该有机制处理类似问题呀
 
也想知道,帮定一下!
 
com+中有共一个共享属性组不知能不能满足你的要求,你可以将BPL进行封装成com+组件然后设置成多实例的不知行不行
 
那个提供全局变量的BPL没有提供访问该变量的函数么?我觉得可以看看源代码,应该有解决的办法。
 
"你可以将BPL进行封装成com+组件然后设置成多实例的不知行不行"

--可以具体点吗
 
期待高手的解答
 
最好作为某个对象的一个公有属性;如:
public
{ Public declarations }
property aaa: tstring read faaa write setaaa;
对着这行声明,按ctrl+shift+c
其他的自己去想了

 
[red][h4]這貼怪怪的.點擊數不見上升,但會提前.[/h4][/red]
 
我同意用属性操作。
 
可以传递接口
 
接受答案了.
 
后退
顶部