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

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

  [复制链接]

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

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

清江 楼主

2014-11-18 16:35:51

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

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

x
本帖最后由 清江 于 2014-11-20 10:45 编辑 5 P( K- a. [" R, r* ]& j& \' y' g
& h( N, m1 t+ {% |' n( J( t% r
问题已经解决,请看本帖第7楼!$ k; Q. |* j% k
( D: b$ F/ E1 F" k, H* `
我在做手工创建工程开发环境的练习时,按照课件中的方法进行了配置,并且复制了课件3文件中第6页的代码到VS2012中创建的WIN32项目里面,在调试代码的时候显示失败了,在代码里面也没有找到问题所在,不知是哪里出了问题。错误信息如下图:
  o+ D$ |# f# f. \4 T) s+ u7 w1 ^1 R 错误信息-001.jpg ! a# d0 E) n9 H$ u6 [6 u, |

! ~1 `9 y6 B5 d2 W7 A
' |/ N0 [9 ?! i6 N+ v# i下面是全部的代码文件:
7 S7 x$ @% ]% T4 \% c- y( g3 W, a/* Include files */
/ v  V1 Q. x/ T9 E/ F2 W. ^7 C#include <uf_defs.h>$ {, y/ C1 o( y: S! \7 B
#include <NXOpen/Session.hxx>7 c2 W  M( [  Z6 R) L
#include <uf.h>
3 f, R# n% a; A% @9 T#include <uf_ui.h>, S" p9 s! H! s2 d( E$ `

4 X, H; t% @+ l5 e0 p; iusing namespace NXOpen; 8 X( l$ \7 v3 a# C" h  {9 D

) ?3 E% _- F0 [1 L# v// Explicit Activation ; Z, H: o) v" Z
// This entry point is used to activate the application explicitly, as in , _% T$ D' X( Y8 N4 d
// "File->Execute-> NX Open..."
( S. y; J6 w* B+ `extern "C" DllExport void ufusr( char *parm, int *returnCode, int rlen ) 8 i) i2 Y8 T" X2 f. `$ s* b
{
5 u$ S& N0 L, Q( ^  M! p# _$ {/* TODO: Add your NXOpen application code here */8 Y' y5 I5 z7 q' _* J! q3 v. F
               
7 F, S% x; ^' \1 i        uc1601("您好!欢迎您的到来。",1);
" r/ o  Y5 W8 z' Z# ]% k        % h; R% a5 z4 M- E" d, `, g0 M
/ o6 W7 W  o8 f) t
        }
* j1 [1 ?4 z" c//---------------------------------------------------------------------------
# C/ n9 @4 m. V// This method specifies how a shared image is unloaded from memory / n# w  Y' F% w: A8 b: ]
// within NX. This method gives you the capability to unload an 3 t: ?( c$ z5 f) l
// internal NX Open application or user exit from NX ; v5 s: j. L, ]$ [) e
//--------------------------------------------------------------------------& x- X$ |/ _5 W$ z
extern "C" DllExport int ufusr_ask_unload( void ) ; c/ V, k" J9 D9 r2 }7 D2 U
{
+ g6 w6 _/ `- m! Q0 A//return (int)Session::LibraryUnloadOptionExplicitly; ) O$ c5 w( d6 y1 j: O0 ^7 X
return (int)Session::LibraryUnloadOptionImmediately;
. u; n- U5 U+ d& v" @//return (int)Session::LibraryUnloadOptionAtTermination; 5 |" R5 Z: a* X, `% m
}
1 s; T7 V: z  y7 v2 ^  U& A" \) u8 b9 D

0 H( }" f9 }; ]
  \& W% z7 |4 Q+ y4 H  [
上海点团信息科技有限公司,承接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 编辑
1 D/ E7 T: m8 h& [3 m5 R4 \
admin 发表于 2014-11-18 17:246 P! w+ o/ J2 c1 W; a6 H! ^3 F7 K
环境没有配置正确  等我发视频 看视频
0 A: {3 Y3 s# I- Z0 n
之前代码确实不全面,后来按照视频里面的步骤增加了:
' Y. f# e2 o0 }7 _/ l0 p1 g        UF_initialize();
/ I+ X8 D5 e$ d9 Y, g+ z3 t/ t7 n        : s+ Q# M4 O5 e) w( M/ n' Y3 X5 W
    uc1601("Hello Jeff!",1);
2 s/ ~5 F( b+ d' Y: A9 W) [/ x0 r       
& I( {# F2 O# Y' ~0 x, F# [1 k        UF_terminate();
" Z0 g: w9 R, G
! W- Y+ C6 V. N3 ^8 r+ G& l* R6 O" J, Q+ P9 V1 F
而且还修改了环境为X64,但是视频中你的可以正常生成,我 这边还是显示失败。, F; X) i8 B1 T7 }: U, c6 s
# N, ~, v9 K4 j6 M  I) X* {5 `
1>------ 已启动生成: 项目: Win32Project1, 配置: Debug x64 ------  F, r. a1 U8 y7 t9 o
1>  lesson.cpp9 F7 I: x4 N# F
1>     正在创建库 D:\plmhomeTrainning\code\Win32Project1\x64\Debug\Win32Project1.lib 和对象 D:\plmhomeTrainning\code\Win32Project1\x64\Debug\Win32Project1.exp) d% v7 g% E3 X5 C' U3 c
1>lesson.obj : error LNK2019: 无法解析的外部符号 __imp_uc1601,该符号在函数 ufusr 中被引用
9 J' Y. @# L% P: V1>D:\plmhomeTrainning\code\Win32Project1\x64\Debug\Win32Project1.dll : fatal error LNK1120: 1 个无法解析的外部命令# x$ Y. l$ K' b4 `9 I
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
: j) s. X7 {7 @3 Q3 O. [: R: T. t. B4 W; s) `
' v1 J- {7 H3 O/ s3 S

2 j9 Z. g% m) i# M% Y# q. n  v& M+ Z( G- h
上海点团信息科技有限公司,承接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
% W/ H) ~& ?* Y# w+ A- W% X3 [) C& H之前代码确实不全面,后来按照视频里面的步骤增加了:' O& M  S9 u! P: s0 I6 t
        UF_initialize();' W) k/ ?& u3 s9 Y. r9 u, T
       

5 L0 X  B" S% h, U6 [& w4 O改了 还要重新设置  加库 * a# `8 j$ e9 t

% T: D3 u! o$ I5 j+ {: n, D7 f. P/ W你检查下!
上海点团信息科技有限公司,承接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();
. s2 ^* a+ V* h# u         % X8 r1 u) p( `$ s5 {
uc1601("Hello Jeff!",1);5 S0 g* m" ~$ S# r+ O% d& r
         
$ Z% o+ S5 s& \' z4 X! d" o+ C) W UF_terminate();' n; b0 J4 ^: C" x# [4 Q- n
请问ufun的函数在调用之前得有UF_initialize(),调用之后得有UF_terminate()???. J" P! @) g3 p% ~( a
上海点团信息科技有限公司,承接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:05$ w1 ?) x, {; J. o
UF_initialize();
" x; j9 N& g0 g0 ~" b8 g$ v/ c         + \# M/ |$ x5 N  P
uc1601("Hello Jeff!",1);

3 d) V4 S- |" e2 f5 `3 o5 I* H视频里面老师是这样操作的,好像说是要用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二次开发专题模块培训报名开始啦

    我知道了