PLM之家PLMHome-国产软件践行者

[解决] 调试代码时出错(问题已解决!)

  [复制链接]

2014-11-20 10:42:28 3688 6

清江 发表于 2014-11-18 16:35:51 |阅读模式

清江 楼主

2014-11-18 16:35:51

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 清江 于 2014-11-20 10:45 编辑 # g6 {3 D+ a$ b: A2 i2 V$ t5 F( n
0 k% Z, a# l; I# y( w& Z3 B4 N
问题已经解决,请看本帖第7楼!- e/ ]1 n4 e  I0 x5 F/ `. u

# K& ~6 H- G% x" J) o我在做手工创建工程开发环境的练习时,按照课件中的方法进行了配置,并且复制了课件3文件中第6页的代码到VS2012中创建的WIN32项目里面,在调试代码的时候显示失败了,在代码里面也没有找到问题所在,不知是哪里出了问题。错误信息如下图:
3 z; L" C5 `. {0 I! m) Z 错误信息-001.jpg 3 r% |1 c% z5 I

  A7 `+ ^$ E% v; n9 T. Y' [- ~. ]
) F0 J* U! J+ Z; x7 X下面是全部的代码文件:
5 V' L) L8 s/ J  I) a2 _/ H/* Include files */! S( V" I6 j& F8 R+ F% B5 k! E
#include <uf_defs.h>9 @, }# n1 v' M. D* p
#include <NXOpen/Session.hxx>
: c% S' u  z+ Q1 A. A" _8 t* P+ x#include <uf.h>
! x2 ]+ D% `' o#include <uf_ui.h>
9 g/ e) \! k8 N% u# C) S. u- \
1 t( c" J/ I% x- Jusing namespace NXOpen; ! {4 D- I. c% Z4 m8 K% t

! T; n0 {% h" C: I& I8 B// Explicit Activation
& N6 `5 m; ?5 I7 T// This entry point is used to activate the application explicitly, as in
" ]" K1 E! O+ r# t// "File->Execute-> NX Open..." / n5 O4 K) c9 o, A; x6 v
extern "C" DllExport void ufusr( char *parm, int *returnCode, int rlen ) 5 x* O2 h( I5 R) _7 q  L
{ & z8 _% U7 \) ?, b$ d
/* TODO: Add your NXOpen application code here */
$ m+ u1 Q! v5 b  L0 X% B               
) q: Z/ T# ~/ r  Q! r2 E" e( [. [        uc1601("您好!欢迎您的到来。",1);( J0 |* H8 c9 q
        
8 u$ q1 D8 m4 x1 j  `3 L2 x; I; t- D9 `6 c. \- t
        } 2 M: q; d: F8 G' }' e. T$ M
//---------------------------------------------------------------------------
1 F  y0 X) n" O+ A3 k+ s// This method specifies how a shared image is unloaded from memory " P& ]" y! S8 c- {9 P4 m
// within NX. This method gives you the capability to unload an 7 D2 u9 i& q  Y( q7 u: l
// internal NX Open application or user exit from NX
2 c2 \) g  J: B$ o# Z# D//--------------------------------------------------------------------------
( y/ y/ Z$ n* a7 ]' _* B- z2 X- \extern "C" DllExport int ufusr_ask_unload( void )
' L2 b# q4 ^% T) E' d{ * z# U& ]& z5 z) H5 d6 w
//return (int)Session::LibraryUnloadOptionExplicitly;
! F8 n8 r0 @4 q( @; rreturn (int)Session::LibraryUnloadOptionImmediately;   d9 U6 V" s7 c: [
//return (int)Session::LibraryUnloadOptionAtTermination; ' G' T, O. i2 m' i
}/ W% s+ ~, x; g2 U. P3 E2 g% w

6 ~5 \3 i- D( z2 w2 i  X4 B; W! e0 T' X7 \" H' A- L
9 k4 i$ a! x& B- b
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复6

admin 发表于 2014-11-18 17:24:03

admin 沙发

2014-11-18 17:24:03

环境没有配置正确  等我发视频 看视频
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

清江 发表于 2014-11-19 15:51:24

清江 板凳

2014-11-19 15:51:24

本帖最后由 清江 于 2014-11-19 16:41 编辑 6 J/ t& a* c/ t. X7 O1 n# ?
admin 发表于 2014-11-18 17:24
6 c! J% |) q! q. {# Z4 }0 U3 t环境没有配置正确  等我发视频 看视频
- F8 f& Q6 S3 i, ]3 V
之前代码确实不全面,后来按照视频里面的步骤增加了:6 z4 N6 O: t5 B) U# X3 |
        UF_initialize();# ]8 w4 R' |" h
       
4 y% z  N# F6 X% w) M" F! p    uc1601("Hello Jeff!",1);
0 v9 g$ C" {1 K; V) s3 g        9 i  d* \: T% r, X# z- t: H5 a  f
        UF_terminate();
: O/ E7 e5 @  T4 J( ^& s" U$ G3 F( ~' y% K# K  d% b( |
8 g( z% o+ _5 _+ Q
而且还修改了环境为X64,但是视频中你的可以正常生成,我 这边还是显示失败。& d/ J' [9 @' @$ U/ \# q

* r& Z3 t* z! l7 [6 a1>------ 已启动生成: 项目: Win32Project1, 配置: Debug x64 ------
- i; G& p8 ~7 d! S1>  lesson.cpp
" t& k$ N; E$ \- k: e; J1>     正在创建库 D:\plmhomeTrainning\code\Win32Project1\x64\Debug\Win32Project1.lib 和对象 D:\plmhomeTrainning\code\Win32Project1\x64\Debug\Win32Project1.exp6 y, z: d0 u* X  n2 f; S7 P
1>lesson.obj : error LNK2019: 无法解析的外部符号 __imp_uc1601,该符号在函数 ufusr 中被引用
& d0 v$ B" g5 q2 \* Z6 @# x1>D:\plmhomeTrainning\code\Win32Project1\x64\Debug\Win32Project1.dll : fatal error LNK1120: 1 个无法解析的外部命令3 [( A* G1 G6 x* H1 m1 r0 E
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========- C5 @, i  d! U% T

7 C  k9 ^' ^6 S5 Q" n0 G1 S3 J0 C0 m- g4 w) V$ E' y  P, r1 E! a  {/ H5 I
/ p5 E# i7 A7 o: P
5 f# p9 l2 J1 }  d3 F/ k. w
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-11-19 17:04:49

admin 地板

2014-11-19 17:04:49

清江 发表于 2014-11-19 07:51
( ^8 L. V7 ~, ?# ~, K" B之前代码确实不全面,后来按照视频里面的步骤增加了:7 ], b+ k0 T3 z7 _+ k6 z) h0 m: L
        UF_initialize();2 C1 j  o5 |, V3 q
       

2 {! x7 P( h$ E  ?" [0 t# V改了 还要重新设置  加库 0 N2 V4 T# N( I8 d( s. A3 m) ^/ z
! ^$ g# O/ H, g' k  m. Y" e  T
你检查下!
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

leaf 发表于 2014-11-20 00:05:40

leaf 5#

2014-11-20 00:05:40

UF_initialize();
. Y7 G" Y& O2 S& ^2 T5 X! o0 ?         ; J4 d5 E$ l6 a7 m- s" x
uc1601("Hello Jeff!",1);6 i6 ^1 B/ G& S& P) q, Z' I
         7 n6 s2 t4 |( G% H" h
UF_terminate();) `7 k, j- p9 L6 p  c$ d
请问ufun的函数在调用之前得有UF_initialize(),调用之后得有UF_terminate()???) T2 {! t7 b9 m8 q( P" J3 c' H  M' ^3 u
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

清江 发表于 2014-11-20 10:40:48

清江 6#

2014-11-20 10:40:48

leaf 发表于 2014-11-20 00:054 K+ [8 N9 ^1 x# _( C8 F& x8 b2 k8 ]
UF_initialize();# _0 @+ l3 r$ x  p
         ! p, H' A% W# @- B+ N
uc1601("Hello Jeff!",1);

9 u% [1 Q/ Z; z4 E, x$ I2 R- [2 E视频里面老师是这样操作的,好像说是要用UFUN函数的话就要有这两行代码,给予许可的权限,你看下视频里面的内容。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

清江 发表于 2014-11-20 10:42:28

清江 7#

2014-11-20 10:42:28

在大家的帮助下问题已经找到了,是我在附加依赖库里面的那个libugopenint.lib文件写错了,改正以后就OK了。谢谢!
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了