|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
通常来讲,非常实用,不用模板创建的话,也可以直接复制粘贴进去使用哦!1 W; B" F4 Q* S; ~) z
5 x" g0 D9 \3 p- O5 v
[mw_shl_code=c,true]; Y; G P3 ^2 }* o1 A2 [
#include <stdarg.h> Y+ `7 T+ Y N+ n8 Y
J6 `0 K# i, P! T) R( S
static void ECHO(const char *format, ...)4 z k i* D) w7 c8 {5 W
{
+ m9 i! n7 r( h/ d l& }5 h char msg[UF_UI_MAX_STRING_LEN+1];8 I" @! y( {5 }& k- V- r% c# e" X
va_list args;
/ E) ~- L7 @- N3 ~) P: | va_start(args, format);
3 }$ ^. X7 {; y- m+ W vsnprintf(msg, sizeof(msg), format, args);, s3 z5 m5 s) k6 D: I% R
va_end(args);: \8 x( g$ P& C; w, g( u$ {
UF_UI_open_listing_window();2 s2 l: s4 ~8 z [4 j
UF_UI_write_listing_window(msg);/ f2 d0 Q' R2 x c$ @9 y- B
UF_print_syslog(msg, FALSE);
; j9 f* Z" q: u0 s8 u. N# Q9 ]0 u4 }}' \9 E2 B% z% E, L% ]
" U4 m1 x0 j/ `) f; F! R; B! _' z#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))! v# |# P5 Q$ [7 l2 @/ v
& z9 H% P; V+ C8 d. q+ {5 Ystatic int report_error( const char *file, int line, const char *call, int irc). J( s; ~! y7 Q& }; H
{4 a- H) P9 O$ I! ^( C r
if (irc)4 R3 i( A' L- K0 ?# Y! V- o
{: \, d# \' C5 q- \2 M# n
char err[133];; V) [$ T) i/ a' T/ k# M
! ? F3 ]3 ?9 u# P4 k1 g
UF_get_fail_message(irc, err);3 Z! r2 o# U, U. q3 M) a
ECHO("*** ERROR code %d at line %d in %s:\n",0 l+ @9 ^4 z) Q# R6 x) q
irc, line, file);* X3 H( K" e' v/ o- U
ECHO("+++ %s\n", err);6 @9 {5 f4 y; _ Z `
ECHO("%s;\n", call);
# G9 H, f1 C& e4 Q( b2 H/ z* i }
5 g' d" s: @. L# S
8 b0 i! H. j% A return(irc);
9 G1 c, h3 }, R7 J0 i}[/mw_shl_code]# w8 j# a h7 R u. H. N
. h; B6 _$ B; b t; g0 [- ~; l( o
|
|