ºìÁªLinuxÃÅ»§
Linux°ïÖú

MySQL UDFϵÄÒ»ÖÖµ÷ÊÔ·½Ê½debugview

·¢²¼Ê±¼ä:2006-09-26 00:23:36À´Ô´:ºìÁª×÷Õß:ĪÞÈ
¡¡¡¡MySQLµÄUDFʵÖʾÍÊÇÒ»¸ö²»ÐèÒªÉèÖÃÈë¿ÚµãµÄ¶¯Ì¬Á¬½Ó¿â£¨*Nix³Æ֮Ϊ¹²Ïí¿â£©¡£¶ÔÓÚDLLµÄµ÷ÊÔ¿Éν¸öÈËÓиö·¨¡£ÏÖÔÚÎÒ½éÉÜÒ»ÏÂÒ»¸ö·Ç³£¼òµ¥µÄÒ×Óõĵ÷ÊÔ·½·¨¡£ÕâÒ»·½·¨Ö±½ÓÀûÓÃWindows API£¬ÓïÑÔÎ޹ء¢¿ª·¢¹¤¾ßÎ޹ء¢ÏîÄ¿ÀàÐÍÎ޹أ¬µäÐ͵ÄÈýÎÞµ÷ÊÔ·½·¨¡£²¢ÇÒ£¬ÎÒÃÇ´ÓÕâÀïÌÖÂ۵ĵ÷ÊÔ·½·¨Ö§³ÖÔ¶³Ìµ÷ÊÔ£¬¶ÔÓÚһʱÎÞ·¨ÕÆÎÕ¿ª·¢¹¤¾ßÔ­±¾µ÷ÊÔÆ÷¶øÓÖ¼±ÓÚÑ°ÕÒ³ÌÐò´íÎóµÄÅóÓÑ´Ë·½·¨·Ç³£ÊµÓã¡

¡¡¡¡Ê×ÏÈÎÒÃÇÐèÒªÏÂÔؽÓÊնˣ¬µ±È»ÓÐÐÄÈËÒ²¿ÉÒÔ×Ô¼ºÐ´Ò»¸ö¡£ÔÚhttp://www.sysinternals.com/ntw2k/freeware/debugview.shtml ¡£Í¸¹ýdebugviewÊÖ²áÎÒÃÇ¿ÉÒÔÖªµÀÕâ¸ö¹¤¾ßÖ§³Öwin9x/ntϵÁУ¬²¢ÇÒÖ§³ÖÄں˵÷ÊÔ£¡ÓÉÓÚÆäµ÷ÓõÄAPI¾ùÖ»ÄܽÓÊÕÒ»¸öchar * ÀàÐͲÎÊý£¬ËùÒÔÓÐЩʱºòÎÒÃÇÐèÒªÀûÓÃÆäËûµÄº¯ÊýÓлú×éºÏ²úÉúÈËÐԿɶÁÌáʾ¡£

¡¡¡¡ÎªÁ˼õÉÙ¸´Ôӳ̶ȼòµ¥µÄÒÔÀ´×Ô http://Delphi.ktop.com.tw/topic.ASP?TOPIC_ID=35166 ÌÖÂÛΪÀý£¬½²½âÎÒÊÇÈçºÎÀûÓÃÕâÀ﹤¾ß½øÐе÷ÊԵġ£

¡¡¡¡1 ¼òµ¥Êä³öÒ»ÐÐÐÅÏ¢£¬ÔÚµ÷ÊÔ¿ªÊ¼Ê±Êä³öÒ»Ìõ¼òµ¥µÄÐÅÏ¢±ãÓÚÎÒÃÇÁ˽âdebugµ½Ê²Ã´µØ·½ÁË¡£

¡¡¡¡ÔÚ³ÌÐò´úÂëÖиù¾ÝÐèÒª¼ÓÈëϱßÒ»ÐУº

[code]OutputDebugStringA("--UDF:my_name()±»µ÷ÓÃ");[/code]

¡¡¡¡ÕâÑùÒ»À´ÎÒ¾ÍÖªµÀÎÒ¶¨ÒåµÄmy_name±»¿Í»§Óõ½ÁË£¬½Ó×ÅÎÒÒª¹ØÐÄ·µ»ØÖµÈçºÎ¡£

¡¡¡¡2 Êä³ö·µ»ØÖµ

¡¡¡¡Êä³ö·µ»ØÖµ·½·¨ºÜ¶à£¬¿ÉÒÔ×ÔÓÉ×éºÏ¡£×ÔÓÉ×éºÏµÄ×îÖÕÄ¿µÄÊǽ«Ò»¸öÓÐЧµÄ char * ÀàÐͲÎÊý´«µÝ¸øWiNDOWS API¡£ÕâÀï¼òµ¥µÄÒÔCÓïÑÔ×Ö·û¿ØÖƺ¯ÊýΪÀý¡£

¡¡¡¡Àý×Ó£º

[code]#include /* º¯Êý- sprintf */
#include /* ¹Ò½Ówindows api */
/* ...........Ê¡ÂÔ */
char* __stdcall my_name(UDF_INIT *initid
UDF_ARGS *args, char *is_null, char *error)
{
OutputDebugStringA("--UDF:my_name()±»µ÷ÓÃ"); /* µ÷ÓÃÁË£¿*/
char *me = "my name";
/*---- debuger start----*/
char debugermsg[256]={0};
sprintf(debugermsg, "%s", me);
OutputDebugStringA(debugermsg);
/*---- debuger end----*/
return me;
}[/code]

¡¡¡¡µ±ÔÚ³ÌÐòÖмÓÈëÁËÀàËÆ´úÂëÄÇôµ÷ÊԾͿÉÒÔ¿ªÊ¼ÁË£¬ÀûÓÃÕâÖÖ·½Ê½¼´±ã²»Ê¹ÓÃ"debuger"·½Ê½±àÒëÈÔÈ»¿ÉÒԵõ½ËùÐèµÄµ÷ÊÔÐÅÏ¢¡£

¡¡¡¡½ÓÊÕµ÷ÊÔÐÅÏ¢

¡¡¡¡½ÓÊÕµ÷ÊÔÐÅÏ¢Ö»Òª´ò¿ªdebugview³ÌÐò¼´¿É£¬³ÌÐòÖ÷´°¿Ú¿ÉÒÔʵʱ·µ»ØËùÐèÒªµÄµ÷ÊÔÐÅÏ¢¡£

¡¡¡¡ÆäËüƽ̨Çë×ÔÐвéÔÄÊÖ²á»ñµÃ¶ÔÓ¦µÄapi£¬ÀûÓÃÕâÖÖ·½Ê½µ÷ÊÔ·½·¨Êʵ±²¢²»»áÔì³ÉÈκÎÀ§ÈÅ¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ