[转帖]环境变量设置_MQ, Tuxedo及OLTP讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MQ, Tuxedo及OLTP讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4437 | 回复: 0   主题: [转帖]环境变量设置        下一篇 
mengyuanye
注册用户
等级:少校
经验:1413
发帖:108
精华:7
注册:2012-11-14
状态:离线
发送短消息息给mengyuanye 加好友    发送短消息息给mengyuanye 发消息
发表于: IP:您无权察看 2012-11-14 16:58:26 | [全部帖] [楼主帖] 楼主

1.1 怎么样在程序中设置环境变量,用哪个函数?
保存一个 tuxedo 的env 文件,如:tuxenv.ini.内容格式如下:

[TUXCOMM]
TUXDIR=c:\tuxedo
PATH=%PATH%;c:\tuxedo\bin
WSADDR=//192.168.0.1:6000
。。。


在程序中使用: tuxreadenv("tuxenv.ini","TUXCOMM");语句来调用。

    1.2 如何在程序中动态变换WSNADDR?
建议使用 tuxreadenv function,方法如下:
保存一个 tuxedo 的env 文件,如:tuxenv.ini.内容格式如下:

[TUXCOMM]
TUXDIR=c:\tuxedo
PATH=%PATH%;c:\tuxedo\bin
WSADDR=//192.168.0.1:6000


在程序中使用:

tuxreadenv(“tuxenv.ini“,“TUXCOMM“);


程序例子:

tuxreadenv();
tpinit()
tpalloc();
Fchg();
tpcall();
return 0


每一个代码都这样写! 

1.3 在 AIX 下,Client 需要对应多个Server,WSNADDR
如何配置?tuxputenv 如何使用?在程序调用时怎样切
换?
一个 client 访问多个server,不建议使用系统的WSNADDR 环境变量。建议使用
tuxreadenv 函数。或者使用tuxputenv.其实最好使用tuxreadenv.因为tuxreadenv 是
读取配置的环境变量
例子如下:

iRet = tuxreadenv("tuxenv.ini","SVR1");
/* 访问SVR1 host */
if (iRet < 0)
{
      userlog("error on tuxreadenv SVR1");
      tpfree(char *)RcvBuf;
      return -1;
}
.......................
iRet = tuxreadenv("tuxenv.ini","SVR2");
/* 访问SVR2 host */
if (iRet < 0)
{
      userlog("error on tuxreadenv SVR2");
      tpfree(char *)RcvBuf;
      return -1;
}


tuxenv.ini 文件内容如下:

[SVR1]
TUXDIR=/home/tuxdeo /* TUXDIR=c:\tuxedo on windows */
PATH=$PATH:$TUXDIR/bin /* %PATH%;%TUXDIR%/bin on Windwos*/
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUXDIR/lib
WSNADDR=//192.168.0.1:6000
[SVR2]
TUXDIR=/home/tuxdeo /* TUXDIR=c:\tuxedo on windows */
PATH=$PATH:$TUXDIR/bin /* %PATH%;%TUXDIR%/bin on Windwos*/
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUXDIR/lib
WSNADDR=//192.168.0.1:6001


1.4 bea 的文档里就有一个客户端连接不通服务端的例子

(html 帮助文档)。


这样做的好处是显而易见的:服务器不用配置成复杂的多域模式。
不通的服务器要用独立的 context。

#include <stdio.h>
#include "atmi.h" /* BEA Tuxedo header file */
main(int argc, char *argv[])
{
      TPINIT * tpinitbuf;
      TPCONTEXT_T firstapp_contextID, secondapp_contextID;
      /* Attach to the BEA Tuxedo system in multicontext mode.*/
      tpinitbuf=tpalloc(TPINIT, NULL, TPINITNEED(0));
      tpinitbuf->flags = TPMULTICONTEXTS;
      if (tpinit((TPINIT *) tpinitbuf) == -1)
      {
            (void) fprintf(stderr, "Tpinit failed\n");
            exit(1);
      }
      /* Obtain a handle to the current context. */ tpgetctxt(&firstapp_contextID, 0);
      /* Use tuxputenv to change the value of TUXCONFIG, so we now tpinit to another
      application. */


1.5 系统环境变量的设置
如果使用 tuxreadenv()函数,可以直接修改环境变量的配置文件。立刻生效。如
果使用windows 98 系统的环境变量,那么需要重新启动系统啊。如果windows
2000 可以立刻生效。

1.6 TMS 起来后,但运行客户端取不到数据,是什么原因?
setenv 就是在写程序时候设置环境变量的一个shell。如果在unix上就是setenv
(或其他的文件,可以执行,更改环境变量的shell 文件),如果在windows 上就是 setenv.bat(也可以是其他的名字,可以改变当前的环境变量)

1.7 在 Redhat8.0 下怎么安装Tuxedo8.1?
经过分析安装脚本我现在知道了。是内部解压缩包出错。原因是没有
uncompress 这个命令。只需cp /bin/gunzip /bin/uncompress 即可。

1.8 环境变量设置需要在几个地方?
关于环境变量有两个地方是必须设置的:
1、当前shell 环境变量
2、配置文件ubb 中
由于 Windows 平台比较特殊,所以可以在“我的电脑”里设置环境变量。但可
以在命令行窗口中重新设置来覆盖,你的问题看起来是你TUXCONFIG 这个环
境变量和UBB 中的不一致,你可以在命令行窗口下用echo %TUXCONFIG% 显
示当前窗口的TUXCONFIG 环境变量。另外如果还不行就把你原来那个
TUXCONFIG 文件删掉,重新tmloadcf

1.9 UNIX 库文件环境变量如何设置?
LD_LIBARARY_PATH 是unix 的设置库文件环境变量,类似windows 下的
LIB=c:\tuxedo 设置lib 环境变量的,其他的unix 还有SHLIB_PATH 等

1.10 Delphi 开发客户端的环境变量设置?
delphi 客户端需要配置两个环境参数,如果是win98,放在autoexec.bat 中,如
果是win2000,在"我的电脑"->“高级”配置Path,指向tuxedo 的根目录和\bin 目
录。
例如 path = ...;c:\bea\tuxedo8.0;c:\bea\tuxedo8.0\bin
tuxdir,指向tuxedo 的根目录

tuxdir=c:\bea\tuxedo8.0




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论