青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 4127|回复: 16

[疑难] 求教一个 关于C语言 问题 【第一个给我解决问题的人我帮谁冲200人民币话费】

[复制链接]
发表于 2013-5-30 19:39 | 显示全部楼层 |阅读模式
求教一个 关于C语言 问题 【第一个给我解决问题的人我帮谁冲200人民币话费】1 L$ y$ Z4 a/ _) E- V/ t( \, M! L2 @

9 t4 J; ~; g& w
' D' h1 d" n2 O8 J8 t, MC调用 api 的 有效方法
$ h9 |/ z1 E$ {# f, J内容如下:
3 Z9 F, l! v+ T( ]: T- f# B! Q8 i, h" X9 A
求教一个 关于C语言 问题 【第一个给我解决问题的人将200人民币话费】3 O1 {# O/ X' m+ l) G- n
// // // // // // // // // // // // // // // // // // // // // // // // // ) {1 u/ M2 W3 e
如图1.JPG8 U% r" G1 x5 f3 b8 V3 |) x) _
1.GIF 9 Q: Q' @/ A' o1 A3 y
我用 【Unigraphics NX AppWizard V1】 创建一个简单的uf程序) Q# G+ n7 t( K; t: z. P
程序名称 UF' J- B( ^/ }; O1 @4 u8 `
以下下代码
% D2 M% i( n4 T; A3 ]// // // // // // // // // // // // // // // // // // // // // // // // // 7 _9 K. T4 Y  h" I& \4 y( g
extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen )2 v. U9 N5 [+ K# t1 I
{
; E$ p  E- A/ P: `    /* Initialize the API environment */3 J) p- Z2 {" w9 X( S
    int errorCode = UF_initialize();
+ I) E6 |% u( `3 s0 p    if ( 0 == errorCode )
5 {# N: m" ^2 D& u* F- z    {% D0 U/ x$ C2 O! s1 r1 X
        /* TODO: Add your application code here */7 n( j8 o3 l: e

6 s7 o# ?/ W( r# P* X3 N9 @uc1601("你好",1); //创建一个简单的uf程序
) j+ {, J" f2 n# R; G
" u: r0 r* G4 C. F% c        /* Terminate the API environment */- m8 p9 k! B& _
        errorCode = UF_terminate();" e* s: X) I4 T& R  S, s  v
    }8 |9 E! U* g" P& l2 y0 X
    /* Print out any error messages */
- E, H3 Z/ H5 h4 B0 ~6 p: o, y, G    PrintErrorMessage( errorCode );" c, }  J7 X, z3 K( E6 L
}
6 Z" _: P  r3 P- m// 编译连接以后 生成UF.dll 在ug 按Ctrl+U 能成功运行  弹出 你好) I% U/ H9 M+ w8 y' O. y
' ^. Q' e) r2 B
// // // // // // // // // // // // // // // // // // // // // // // // //
9 k9 e! j0 U* m3 P! ~ 2.GIF 7 c, f: |  c  Y
如图2.JPG, ?! F2 m0 a. r  R9 _( H' E
我用 【Win32 Console Application】 创建一个简单的c程序
' I9 h3 z. Q0 Q$ @; r程序名称 C% H. j5 z4 L/ L- _" A
以下代码
- z( k/ o0 n4 u1 X$ N// // // // // // // // // // // // // // // // // // // // // // // // //
: g1 L$ Z/ G3 U' l- J#include <iostream>
+ |9 `8 H' U* E5 P' V8 Qusing namespace std;
8 m! P! n9 h  k void main()
. U) Y5 T2 q% m4 z{     2 h( z& V. Z1 t. B
    system("C:\\UF\\DebUG\\UF.dll");  // 调用dll1 n' J* d/ x/ [, i; Y1 G2 N4 Z* X. r
}8 f8 S6 C1 `" @% D( M1 g

  ~6 k" @$ b" d' Q/ X3 |$ s# J// 编译连接以后 生成C.dll 在UG 按Ctrl+U 能成功运行  但不能 调用UF.dll
/ ~# p5 J" `/ R! I" c1 n
6 ^# a7 t" B$ s7 z* _/ H; {3 I// UF.dll 属于在 UG内部运行的程序& s7 A/ L7 A  k$ l+ ^
// C.dll  不属于在 UG内部运行的程序
5 ?7 s4 G# e5 }% K9 a//  C 只能调用运行 不带 对话框的 uf程序吗?如文件导入导出; |; q' g9 E! {; z! m# H
# A4 c* {4 ?0 s8 J. t
//  C 如何才能调用 UF.dll  【无需带参数 只要能在ug运行 提示 你好就行】
0 v7 j3 N* K0 I0 f3 ?+ @' c3 O& r: U' _9 h* O
8 f# R. @. o$ {% l

4 \: x5 l/ G9 ]6 P, u
' ]6 s" R- ^" }' I. |$ j/ I
 楼主| 发表于 2014-5-17 13:04 | 显示全部楼层
playboy241 发表于 2014-4-19 08:49
1 q3 J& u$ \6 J" G' u" J; r' y200块就要源代码?
# l5 D, ^: d! Y) X! Z' T
什么态度,耍我呢这是,,算了这个问题不重要了,
: o: S1 z+ d1 ]没时间去了解全部,现在开始我只做网上没有的外挂
" W2 z4 U  ?8 T
回复 支持 1 反对 0

使用道具 举报

发表于 2013-5-30 20:50 | 显示全部楼层
UG调用UF.dll 是通过特定的函数入口ufsta进行的。所以你要UG调用自己的Dll文件,dll必须遵循UG的要求,即定义相应的入口,并作一些初始化工组。声明一下,不是看着200元话费来的哈。
5 `' A4 {  e; n, D& h8 K( H. U0 l1 V我也不清楚你为什么要实现你的这个想法呢?
回复 支持 反对

使用道具 举报

发表于 2013-5-30 21:05 | 显示全部楼层
赞一个!!!民间的高手就是多啊!!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-3 10:22 | 显示全部楼层
yelang00 发表于 2013-5-30 20:50
4 W# Y+ L- P' V2 Q& AUG调用UF.dll 是通过特定的函数入口ufsta进行的。所以你要UG调用自己的Dll文件,dll必须遵循UG的要求,即定 ...

+ ]. N8 ^7 a% r这个对我来说 比较 重要
5 h) @6 b+ j, f5 Z- ~, zui界面有时功能不足 我就的用 vb界面 不是vb .net【vb没ug接口】, |  \3 s9 u8 f  ]- k" h
grip 调用 vb界面 vb想返回的话  grip 调用vb时 鼠标移到 界面外就会 变成一个圈0 H/ o3 y/ h- P. \
grip 调用 vb界面 没有圈  vb就不能返回 调用grip
9 {$ `9 X7 y7 C' D1 `& A8 |3 u1 U5 j5 R+ g* j7 ~
api 调用 grip
* G  \6 m. I# k) S# E: @% U; e4 n1 Yapi 调用 ug宏* Y$ w+ B( `& D
api 调用 vb' i: R: E% ?, Z" g7 e4 q
grip 调用 api
& _) {& T$ |9 bgrip 调用 vb
6 D% f' B9 r  \/ n* `7 t: u5 x都会了3 r. Y: T  S1 Y8 c2 z
就是不会  vb 调用 grip  或者 vb调用api * T- z  }8 [6 l& I3 j
- b# ]/ @& n: C" w

7 H% Q6 Y, P$ |! {' }; Jvc++ 界面我还不会用 ui界面 有时候功能不足  ) v) P( U0 w9 {9 S- D3 K4 `1 ~
我想用 vb 弥补 ui界面的 不足

点评

刚才有点武断啊!抱歉  发表于 2013-6-14 12:40
上面一大推这个会了那个会了,就是不会这个。这就可以看出来,其实你不是真的理解编程,你会的只是按照实例或者函数摸索出来的。如果你真的理解调用的过程,就不是这样提问了。  发表于 2013-6-14 12:33
vb 做界面 c做代码  发表于 2013-6-3 10:24
回复 支持 反对

使用道具 举报

发表于 2013-6-3 20:54 | 显示全部楼层
我觉得你运用的技术很丰富的。反过来,想一想。相互调用无非是为了传递参数,调用函数。
  h, q2 g: Y- s% H3 L6 M" h5 j6 C建议你这样实施。
. y- a8 `8 p" s( lapi-->vb界面->api->grip->api->宏-》api, M) A4 W) Q% K) Y! x0 h
也就是始终以api为主线,其他为辅助。我想这个应该没问题吧。只是稍微复杂点,但可解决你的问题。曲径通幽。
3 P8 P' d* I6 Q7 T: C不知道能否解决你的问题。
回复 支持 反对

使用道具 举报

发表于 2013-6-4 15:24 | 显示全部楼层
UF_load_library# C' Z5 R1 ^# J  `4 r
回复 支持 反对

使用道具 举报

发表于 2013-6-4 15:25 | 显示全部楼层
又不是美金,不是什么新鲜事了,省了你那200块钱,给你函数自己调UF_load_library( ^6 q0 l) ~! h0 y  ^6 ~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-6 09:29 | 显示全部楼层
tianpeng 发表于 2013-6-4 15:25 6 N4 {! F( W7 j3 o3 I
又不是美金,不是什么新鲜事了,省了你那200块钱,给你函数自己调UF_load_library

/ ^2 M% I% y( K2 y- a0 o% O* m) F  W8 J# y# y* T5 Q# l! o
UF_load_library 内部模式可以调用ug宏 【早以解决】
+ m) M) V8 V' F$ H/ W外部 模式 也能  调用ug宏 ???【求外部模式啊】* s( p% G6 S; z0 t8 F& T6 b
) D* e  H8 o$ O9 \' K6 `# y) d+ [+ W
api 与 vb 互交 也早实现了  虽然是动态 调用 vb 的dll界面 但还是 出现  鼠标一个 圈一个圈
6 E6 s$ A( A) \0 b5 ^0 s6 F4 I. a1 W
; z4 M1 h, C# q
回复 支持 反对

使用道具 举报

发表于 2013-6-13 23:27 | 显示全部楼层
....学习中。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-14 14:10 | 显示全部楼层
1821117007 发表于 2013-6-3 10:22 5 c! y- ?/ E6 X* V% o( b: O, i& w
这个对我来说 比较 重要$ p+ o1 V7 _" u9 m
ui界面有时功能不足 我就的用 vb界面 不是vb .net【vb没ug接口】; v9 x$ {' n4 |3 I9 l2 W
grip 调用 vb ...

6 |& S- [+ L9 Q" a- M2 q+ ?你说对了,我还真不了解调用过程求解决,
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-2 11:14 , Processed in 0.217725 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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