|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
通常来讲,非常实用,不用模板创建的话,也可以直接复制粘贴进去使用哦!6 u9 \$ ?& R$ e! A
/ c7 G" P; G) |' g3 z
[mw_shl_code=c,true]2 m0 ]2 |! m; g; Y( |
#include <stdarg.h>
: t6 F! y; F5 t6 {
* o2 R1 [; n8 z! u1 Qstatic void ECHO(const char *format, ...)$ e2 {' i# c- v: h% Z2 j
{
" {3 V0 X# V" V" k0 f( N8 X char msg[UF_UI_MAX_STRING_LEN+1];: L; L2 A- `9 V+ g6 X4 }+ Q9 l: Q
va_list args;) n% ]; ]1 D$ g3 c" a& e; }
va_start(args, format);. E3 I8 Z0 \9 ^& A$ _9 L0 s
vsnprintf(msg, sizeof(msg), format, args);" p0 j9 D" m7 j! |, S$ @$ I
va_end(args);
% V/ y$ G0 T: Q; { UF_UI_open_listing_window();
; g! ?0 U7 N! |6 x+ K UF_UI_write_listing_window(msg);! J$ n" l/ V4 Y, X ]0 |0 O7 a
UF_print_syslog(msg, FALSE);) _; l# s$ v# v0 }' z' ~
}
3 S! [) o6 g* j
$ x7 o D7 D# D6 ?#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))
/ S" k5 J& m1 Y" Q, W7 ~) i
' }1 V! J( b" _* t2 r# Estatic int report_error( const char *file, int line, const char *call, int irc)1 @0 k7 t. J6 _8 A1 q
{
0 x% W- j- @8 [/ w9 A0 Z0 { if (irc)
+ z0 W; U% @9 W* ` {% i8 ~- }: c5 \& U- N
char err[133];
1 o! S1 O" e, j" p0 q/ ~$ Q) e$ z* }3 o# [: d0 r1 T
UF_get_fail_message(irc, err);
& D; k, _1 k) b ECHO("*** ERROR code %d at line %d in %s:\n",4 k6 M! _% Y3 W, }
irc, line, file);4 o( c# e$ a2 H" b
ECHO("+++ %s\n", err);0 g, d! S7 o( }' O; P, G
ECHO("%s;\n", call);" t, z. Y5 D+ F; A7 P2 L0 W
}
8 U0 y- S$ H4 P; P
( I9 T+ m$ [/ e return(irc);
2 i$ b+ t1 m4 s5 o}[/mw_shl_code]
1 y: {6 @4 q: E; b7 M
. W; n2 x3 U+ m' f* j# Q# @# `3 c+ w |
|