|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
通常来讲,非常实用,不用模板创建的话,也可以直接复制粘贴进去使用哦!
7 H1 Q- L% x5 X2 h- Y0 i7 v$ E; x$ M& v3 i9 ~' W6 g
[mw_shl_code=c,true]
8 O8 s" }7 u6 T V; j$ `#include <stdarg.h>+ A/ w/ I( y0 r8 d0 M' j2 N- s+ q
2 I! s" z- I3 J, c5 P. kstatic void ECHO(const char *format, ...)
+ J( M& v7 H4 q# E. {% j8 Y{# S, ]% z; h7 r* b1 E9 }
char msg[UF_UI_MAX_STRING_LEN+1];
6 ?8 F: L. Q# J+ P va_list args;' l2 v: K% W) B' U8 Z$ a: Q
va_start(args, format);4 W0 O( ]( w1 [$ {2 w/ K
vsnprintf(msg, sizeof(msg), format, args);
& w- O/ Y- b6 ?8 f9 ~ va_end(args);. A1 w i5 i' F" ^
UF_UI_open_listing_window();. S) r: V# c% T2 p* a4 H; d
UF_UI_write_listing_window(msg);% z# }4 |0 F. t; K/ W( r
UF_print_syslog(msg, FALSE);- v0 A7 \) T$ n7 F
}
/ {6 @0 _8 `. e4 @5 W8 E
$ r7 v( b; U r0 R0 G#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))
0 ~6 Y8 Z; ]% U2 u5 g4 s9 u3 z
" ]2 g1 z7 v1 d3 k& n" J" M5 E, ^. cstatic int report_error( const char *file, int line, const char *call, int irc); C) `; h- {, l6 h3 `- }
{
- v, y4 V6 j$ |% l; t. ^& K/ W if (irc)
1 ^- l8 V6 h- b* ?1 C* P3 z2 P {
; L j/ b7 C# \6 N" V3 z( Q; v1 ^ char err[133];. G5 @) |4 X& X) h- M ~
" Y$ C ~2 f- W' G6 W& Y- B
UF_get_fail_message(irc, err);
3 v9 x5 [- Z8 N ECHO("*** ERROR code %d at line %d in %s:\n",
" m0 V+ i$ ]+ L1 W( m- s7 _+ @ irc, line, file);5 Y( v5 l) X( O8 V
ECHO("+++ %s\n", err);
6 y$ m3 d+ k( Q& ?& y! o( Q. Y ECHO("%s;\n", call);
; U# u: I. T" G5 G }) e4 {" ` t ^- g5 K4 W
% e$ B2 o5 ^2 N2 H% k
return(irc);! r! L& [2 r' g! c$ \- c
}[/mw_shl_code]
3 f) f1 G) Q9 ]2 k' X1 J
- E+ ~5 T# U; L) ^2 w* u |
|