|
下面写的内容是我一年前摸索的,后来因为工作原因不做这些,就搁置了。
7 X' J/ T, k$ u! a今天整理硬盘的时候发现了这些资料,因为记得论坛上有不少人在研究用易语言来给ug做二次开发,所以拿出来给大家分享。
, _, c5 a8 K: ?9 M因为能力有限,当时写代码就有点乱,我现在也没有整理,不过大致功能是明确的,我在这里做了简单的说明。
. m+ N1 _+ i/ t! Z9 _4 l( N! W
& H3 H7 P3 {8 h为什么会想到用易语言来开发:
9 y5 _1 `: T& B) P1,因为用c++来开发,并不是大多数人所能掌握的,必须要有一定的基础。而易语言比较简单,容易掌握,只需短暂的时间就能写出一些简单的程序代码,比较适合普通人群
. O! r; X* k* m% O7 Y6 Q2,VB也可以做二次开发,且语言也比较容易掌握。但是用VB写的EXE可执行程序,在GRX调用时,不能共享UG窗口,也就是说当打开EXE文件时,不能对UG软件进行任何操作。因为有的时候我们在输入参数时,要看一下3D模型,而这时不能对UG视窗操作,这是非常讨厌的!(至于VB写DLL,或者VB结合C++,我没有做研究,这里不做讨论)
& p1 @5 m% Z3 g- o4 |) M
- [, ^$ ^3 |0 {! @! g, d附件里易语言所能实现的功能:# d- W# |* B7 O. s/ |3 E5 x/ L
这里用易语言编写的DLL,可以用UG直接调用,然后进行相关参数的输入 }) [1 o c( [3 G* e* [" V
运行相应的GRX文件是通过一个C++的DLL进行过渡的(这里C++写的DLL起了个启动GRX文件的作用,这DLL是通用的,里面有个输入函数,参数就是GRX的路径全名称)这个DLL你们以后可以不用写,你们用易语言写的DLL可以直接调用这个文件,只要附上正确的参数。调用格式如下图
: J5 @6 A @6 }: F% f
/ }3 M9 @) Y8 I3 k& F6 ?* p
0 I$ k* c% P/ ?$ h2 v# Y, t0 a8 ~5 y: K7 o; f* o; c
UG调用DLL的入口函数通常有ufusr()和ufsta()两种
4 V% G9 Z& k7 |9 V- d/ Tufusr()是通过下拉菜单点击实现的,ufsta()可以放在特定目录让UG自动加载。4 Z8 i6 s$ ~9 B- v( S$ H
这个可以自行选用。此函数必须公开
' I# J, d* {( v M3 C. V下面是格式
0 ^) F! J) A- r- h6 g# g
0 ?8 g u5 [# T1 }2 n9 ?) _$ }0 [' @
还有的内容我就不写了,你们可以下载附件自己研究1 G' t% a+ h3 S" p
" K. r* Y K& B# \7 L7 t( f, U
存在的一些问题
7 y1 r# Y. w# e. i& d+ Q7 x附件的代码只是实现了一些简单的功能,而且代码也有很多不足的地方需要改正,请谅解- v* F3 a" A8 r7 |, S9 S
1,如果需要DLL和GRX进行参数传递,还是需要用文本文件进行过渡的。6 R0 M; E- L$ T, \' g
2,当运行了GRX文件,DLL的界面还是显示的,如果再次点击运行按钮,会有错误(这些可以修改代码完美解决问题,我这里没有进一步深入)
8 `9 p( T2 ]' r8 ~4 I" v' m8 D- g8 e9 S9 J
把附件解压到D盘,CTRL+U调用文件夹D:\QW里的test.dll进行测试
) L+ m" ~& b# m5 u* r# Q注:在UG4.0上测试通过,易语言用的模块式网上搜索而来。里面有些代码可能是没用的,请自行整理。0 g' p7 `; @0 `- g j- b& g& w7 w
QW.rar
(533.54 KB, 下载次数: 955)
3 ?, @ {7 P$ c A: A3 \: S8 A
|
评分
-
查看全部评分
|