|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
通常来讲,非常实用,不用模板创建的话,也可以直接复制粘贴进去使用哦!3 x2 }& ~$ @, N$ ~! [
4 O+ m0 n$ Y1 Y, C! h
[mw_shl_code=c,true]2 y" U2 B' V, E/ i3 p. f
#include <stdarg.h>
# o) v' V) M3 E
- I) L1 ?9 R* I+ y% r7 z* Dstatic void ECHO(const char *format, ...)
' s- f" X3 r s* Z3 q+ X{
2 P' _. p9 Y! S& h. W# ^. E, ^) g char msg[UF_UI_MAX_STRING_LEN+1];: o5 O9 [7 K( X: J1 p
va_list args;
) H A6 A$ H3 W/ _% U0 V va_start(args, format);
" _& P" m" z$ n J* ]6 |2 H vsnprintf(msg, sizeof(msg), format, args);6 K! {, E5 A; y9 \) S/ K+ O7 D* l
va_end(args);4 l5 B: r0 D& \. F5 T& p
UF_UI_open_listing_window();
- A, w- g+ y, O1 J4 @ UF_UI_write_listing_window(msg);* E- n: ~2 S# @8 ~! p h
UF_print_syslog(msg, FALSE);
" O' [0 F$ w$ w9 K! M! J. b3 h}
- O: e' Z) ?& m1 }; _# X0 A
+ ?$ M5 Z$ u3 ?) S' p#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))
Z! \ l" `6 U& k6 _) i! _! R# t5 j' B6 D/ F: h1 g: V7 F
static int report_error( const char *file, int line, const char *call, int irc)7 c. |) B1 a6 R2 A) m5 l" y* q8 S
{
$ j& p/ S: D( ^! `9 Y if (irc)
! L+ E) N) r# N9 w. a$ V {
3 }" G r6 u, L, b char err[133];$ O" r9 R2 h Y; c4 ?6 K+ z/ d0 w
1 u& N) J) D" A% _0 v$ B) R5 D UF_get_fail_message(irc, err);
4 Z; O: l# D3 \- i$ J ECHO("*** ERROR code %d at line %d in %s:\n",- B8 o8 S4 y; ]3 G
irc, line, file);4 @9 r/ u. l9 L5 F5 w) o& c% v
ECHO("+++ %s\n", err);
: u, H( b* D. j# Q ECHO("%s;\n", call);: L2 \; E3 }1 m. y4 e9 {0 }
}3 e7 c4 y9 c) [: N5 d$ r* r
! g" ~% j7 s9 r5 C9 p return(irc);
- o2 s# T/ z/ b: w& D}[/mw_shl_code]* `* l% ~% F5 p
# m$ g- i- _# N; l v |
|