|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
通常来讲,非常实用,不用模板创建的话,也可以直接复制粘贴进去使用哦!# T6 R0 l1 f0 B7 D
$ j1 ^, I) x0 H; [! o8 S
[mw_shl_code=c,true]
7 H/ J9 T( k9 \9 T" g9 }+ p#include <stdarg.h>
4 _' ~ g) O6 \1 t
+ M: T8 \8 \% c& I$ ?8 _; O% x; ~static void ECHO(const char *format, ...), J6 H+ \% e( R& ^; q( ~
{, K. Y- H. r, U1 } A- K/ }3 o0 G
char msg[UF_UI_MAX_STRING_LEN+1];, X" w+ R- U6 s; Q4 o$ N w+ v9 w
va_list args;
1 k% H7 @3 C5 u: B: Y, R va_start(args, format);# u5 |" A3 L0 W5 c
vsnprintf(msg, sizeof(msg), format, args);
, W8 {3 B8 {4 U; ` `, H) C va_end(args);
2 O3 w+ ~3 p, w/ d7 G UF_UI_open_listing_window();
: m, c# w3 }' c6 H2 K# H2 u) I UF_UI_write_listing_window(msg);
. M5 r% b8 Q' u% {& i+ i+ k) I UF_print_syslog(msg, FALSE);- j C/ T! D0 J
}1 T5 _0 N5 g# K5 T' O
9 e# [& A. \) [$ F q#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))6 _0 J! Y! |8 l
8 Z/ r$ r& i! k6 f6 v6 Astatic int report_error( const char *file, int line, const char *call, int irc)
0 J" T8 v# Z7 I* s a& E: p; ?) z S$ M{
: M/ Q, o8 P# O) C, B- ?1 R if (irc)$ ~0 W6 I, Q0 g' G
{1 c+ L+ M8 `' u: C+ E
char err[133];/ U7 [4 F) H. j( g. d
+ }2 [9 e' A+ ]3 f6 K& z
UF_get_fail_message(irc, err);
. K% F& u* A, s" ~" x4 k; f, T ECHO("*** ERROR code %d at line %d in %s:\n",: k& \. h4 I$ @& _0 T
irc, line, file);" j7 f0 ~6 T- U: r" z3 D7 `
ECHO("+++ %s\n", err);0 E+ Q/ _7 N9 q
ECHO("%s;\n", call);+ Y" t9 g4 g# ]
}
/ D- {1 B# q0 ?
" L' n) C0 H" }; J8 _. M return(irc);1 i$ {: \- R" }: z+ ]" f- x/ P
}[/mw_shl_code]
( R3 I" p) X6 _' ^
8 |) c. {5 a2 T: k* n6 D% z |
|