青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 18125|回复: 15

[疑难] 用GRIP如何定义UG里的变量安装路径目录?

  [复制链接]
发表于 2010-2-5 00:48 | 显示全部楼层 |阅读模式
用GRIP如何定义ug里的变量安装路径目录?
) S" B; s& f- h" v7 h- e! A) D
# g( {2 ]; [& h7 o$ D  JUGII_ROOT_DIR     C:\Program Files\UGS\NX 3.0( b% Z  A) ~3 P& H( A1 h. y
用什么源码表示UGII_ROOT_DIR  
( r  `" z9 f# i8 p高手请帮帮我
发表于 2010-2-5 03:26 | 显示全部楼层
用户默认设置可以吗% y/ v* ?0 `* S& @
  里面有目录可以设定
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-2-5 18:10 | 显示全部楼层
回复 2# caibing1121
2 z% W7 j( X  Q( V如可设置呀,能详细一点吗?还是GRIP里根本就没得设置呀?
回复 支持 反对

使用道具 举报

发表于 2010-2-6 20:59 | 显示全部楼层
本帖最后由 darkbit 于 2010-2-6 22:46 编辑 * H9 r* @/ m4 G  o
2 P0 m* X$ \$ _& c$ c7 f0 W4 ?+ {
做回好人,楼主的问题可用envvar/来访问2 c. s7 i9 j% h, R
具体如下% Z$ D2 x( a" A+ d2 G
envvar/可用于对环境变量的操作,语法为:
4 H% v- A( q: A8 w  x: D, f
6 o+ V) \6 i2 X* V8 bstring = ENVVAR/ 'variable'{,ASK|,SET,'value'}[,IFERR,label:]$ K6 u' {0 N* I& J
/ f, r2 e+ l+ r+ l! t; `* S
string是指envvar/的返回值,结果是一个字符串! E/ s  `# Q; F+ o( [
variable是指envvar/要操作的环境变量名( C/ O% N' g7 ]7 |, X7 J4 F
ASK是对环境变量做访问操作8 R% O3 P" _; t) J7 L/ ?
SET,'value'是对环境变量做赋值操作$ k$ ~/ }2 A" r' P9 {+ q5 q
IFERR,label:是该操作如出错就跳转' ^6 U/ L) @' n  w& E" c
# i: J: M6 }4 x4 `
举个例子
1 n3 b, D! f% S, c3 }, G! y想要得到UGII_ROOT_DIR这个变量所对应的实际路径的值,并显示出来,
% _  _3 _- |8 Y若没有这个变量就做提示% ~5 x! Q, v1 I2 y, i
代码如下:7 U' M1 Y5 P. V
string/str(132)
5 t/ F) l5 v7 d: V: I( D5 ^str=envvar/'UGII_ROOT_DIR',ask,iferr,novar:$ U/ B1 X/ q$ }, P9 v
print/str
/ L# c. E& f/ Q& v( W/ X# Xjump/trm:. v8 j- E2 A/ j7 ]
novar:
+ ?! |3 y8 N- L) E$ [) z% Rprint/'Not define UGII_ROOT_DIR"2 [9 g% O: \4 H
trm:
' o# l6 Z* t" s. T( \& L' C( Whalt
5 H! u- r: J  n+ X- B$ X& z
9 [, y) U+ z: p3 R9 Q不知你能不能看懂/ p1 d3 J. p; k1 v7 o: X3 q! B
/ q9 w8 e& g1 g. W5 {: z
楼主的这个问题带出了另一个很典型的问题1 ~) a0 A& W9 b& K  N) W
那就是相对路径问题,因为环境变量是为相对路径而发明的3 ^2 N5 W2 }& c1 m. n& f8 \1 J
UG的外挂出了不少,某些已在商业销售
# }3 K/ x& L5 U3 n$ r' l作为商业软件,其安装路径不能定死,软件要移植方便,这是基本2 ^3 z* Z; N9 g$ @& L9 ~
但好多(可以说我见到的几乎所有)都是定死了路径的,在用绝对路径,比如一定要装在或拷到D盘下等等
9 A7 m5 g8 y- }# A2 h6 z因搞外挂好多人不是软件编程出身,半路出家,会用GRIP已经不错了,用API就更少了
& x7 _' X$ H" W& P: }7 s8 `做一个功能前连起码的环境判断都不会,比如该功能是在建模环境下,不是制图环境下,这在功能开始应该有个判断,很遗憾,我很少见到
6 E* w8 x% j% s& T) }% L2 Z一个有大量数据的功能,其执行码和数据应该分开(比如标准模架),5 z  \- v; b2 K+ M7 k
执行码应只做个引擎,数据应做成库以便用户扩充,一旦用户觉得不对,他只要改改数据库即可(数据库做成普通人能看懂的),不用麻烦程序设计者了
. r: p+ {1 }( G/ A8 h3 n) F很遗憾,我也很少见到,我只见到执行码和数据混在一起,这对程序的后续升级和维护带来非常大的隐患和工作量! E# J% P3 i) D3 e' l( Z$ f
也难怪他们,非专业的搞出一个东西来已经不容易了,至少比我有耐性
回复 支持 反对

使用道具 举报

发表于 2010-3-14 11:42 | 显示全部楼层
转转,瞧瞧 !!!!!!!!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-3-15 23:34 | 显示全部楼层
回复 4# darkbit
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-3-15 23:35 | 显示全部楼层
多谢darkbit这位兄台,实感激不尽,问题已解决!
回复 支持 反对

使用道具 举报

发表于 2010-3-27 21:52 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2010-6-5 20:45 | 显示全部楼层
学习来了……  看帖 回贴
回复 支持 反对

使用道具 举报

发表于 2010-9-15 11:51 | 显示全部楼层
好贴。顶一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-5-12 20:15 , Processed in 0.510185 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表