在pb中调用了函数 RegistrySet 修改环境变量,通过我的电脑-属性 可以看到值已经修改了,但是调用新的环境值无效,必须把程序退出,在重新登录才可以;如何通过程序来控制,环境变量值修改过后不退出程序,就能使用新的值?
------最佳解决方案--------------------
你的问题和RegistrySet没有关系,RegistrySet设置完后,你可以用RegistryGet试一下,注册表应该都改了
估计问题是出在MQ上,建议你的RegistrySet后,把MQ断开一下,然后再重新连接一下
MQS.ConnectToNewObject("MQAX200.MqSession")
重新调用一下ConnectToNewObject
------其他解决方案--------------------
把代码贴出来看看
------其他解决方案--------------------
怎样调用新的环境变量的
------其他解决方案--------------------
不会啊,set设置进去,get就能读出来,
------其他解决方案--------------------
是pb调用MQ
string ls_titlefont
RegistryGet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "mqserver", ls_titlefont)
IF ls_titlefont = gstr_mqserver.mqserver_kc Then
Else
RegistrySet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "mqserver", RegString!, gstr_mqserver.mqserver_kc)
End IF
lmq_Transret = guo_mq.put_msg(ls_message)
if lmq_Transret.err_code <> '0' Then
guo_mq.mqrollback();
RollBack;
messagebox('',lmq_Transret.err_msg)
Return
Else
guo_mq.mqcommit();
Commit;
End If
------其他解决方案--------------------
瞎搞!。。。。。。。。。