青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大熊的口袋

 

vc下格式化輸出調(diào)試診斷信息(TRACE)

最近在將一個(gè)dll工程從一個(gè)大的項(xiàng)目里抽出來,避免依賴其他的亂七八糟的lib和dll,作為一個(gè)獨(dú)立的dll工程。將包含工程文所有主要代碼的文件夾拷出來一編譯,問題一大堆,其中最扎眼的要數(shù)TRACEA()TRACEW()TRACEW1()TRACEW2()這些未定義的宏了。想把原先的宏定義拉過來,卻總覺得這些TRACE1、2之類的實(shí)在是不太雅觀。并且如果依賴原先的實(shí)現(xiàn)可能要要再帶一個(gè)dll(那我抽出來的目的是什么?),遂自己實(shí)現(xiàn)了一個(gè)任意個(gè)參數(shù)的TRACE宏,廢話少說,上代碼:
// --debuginfo.h
#ifndef __DEBUG_INFO_H__
#define __DEBUG_INFO_H__

#ifndef NDEBUG
#define TRACEA ((void)0)
#define TRACEW ((void)0)
#else
VOID _cdecl _traceA(
const char *msgFmt, );
VOID _cdecl _traceW(
const wchar_t *msgFmt, );

#define TRACEA _traceA
#define TRACEW _traceW
#endif

#endif
//--debuginfo.cpp
#include "debuginfo.h"
#include 
<stdlib.h>
#include 
<Windows.h>

#ifndef NDEBUG

__declspec(thread) unsigned retAddrForTraceA 
= 0;
__declspec(thread) 
char tszBuf[512= {0};

__declspec(thread) unsigned retAddrForTraceW 
= 0;
__declspec(thread) wchar_t tswzBuf[
512= {0};


static unsigned *GetAddrOfRetAddrForTraceA()
{
    
return &retAddrForTraceA;
}


static unsigned *GetAddrOfRetAddrForTraceW()
{
    
return &retAddrForTraceW;
}


static char *GetAddrOftszBuf()
{
    
return &tszBuf[0];
}


static wchar_t *GetAddrOftswzBuf()
{
    
return &tswzBuf[0];
}



_declspec(naked) VOID _traceA(
const char *msgFmt, )
{
    __asm 
{
        call GetAddrOfRetAddrForTraceA;
        pop ebx;
        mov [eax], ebx;
        call GetAddrOftszBuf;
        push eax;
        call dword ptr [wsprintfA];
        call dword ptr [OutputDebugStringA];
        call GetAddrOfRetAddrForTraceA;
        push [eax];
        ret;
    }

}


_declspec(naked) VOID _traceW(
const wchar_t *msgFmt, )
{
    __asm 
{
        call GetAddrOfRetAddrForTraceW;
        pop ebx;
        mov [eax], ebx;
        call GetAddrOftswzBuf;
        push eax;
        call dword ptr [wsprintfW];
        call dword ptr [OutputDebugStringW];
        call GetAddrOfRetAddrForTraceW;
        push [eax];
        ret;
    }

}


#endif

這個(gè)trace是線程安全的。避免了自己去分析格式字符串。

終于,工程再編譯一次,結(jié)果安靜多了...

posted on 2009-11-04 16:35 大熊的口袋 閱讀(3153) 評(píng)論(1)  編輯 收藏 引用 所屬分類: cpp

評(píng)論

# re: vc下格式化輸出調(diào)試診斷信息(TRACE) 2009-11-06 11:22 喜樂遞女性購物

吉薩匯商大廈  回復(fù)  更多評(píng)論   

導(dǎo)航

統(tǒng)計(jì)

公告

常用鏈接

留言簿(2)

隨筆分類

隨筆檔案

win32 & debug

搜索

積分與排名

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩精品高清| 一本久久精品一区二区| 亚洲福利视频免费观看| 国产视频亚洲精品| 国内精品视频在线观看| 经典三级久久| 亚洲激情第一页| 亚洲图片你懂的| 性欧美在线看片a免费观看| 亚洲综合国产精品| 久久精彩免费视频| 欧美成人一二三| 日韩视频在线一区二区| 亚洲在线第一页| 久久午夜激情| 国产精品久久二区二区| 激情五月***国产精品| 日韩一级片网址| 久久久7777| 亚洲精品视频在线| 久久狠狠婷婷| 欧美三级黄美女| 韩国久久久久| 亚洲午夜激情| 欧美电影美腿模特1979在线看| 亚洲国产另类 国产精品国产免费| 亚洲国产第一页| 午夜精品久久久久久99热软件| 麻豆精品91| 国产午夜精品一区二区三区视频| 亚洲靠逼com| 免费h精品视频在线播放| 中文亚洲字幕| 欧美高清在线精品一区| 国产一区二区福利| 亚洲一区免费视频| 亚洲激情在线观看视频免费| 香蕉av777xxx色综合一区| 一区二区三区在线视频免费观看| 久久人人97超碰精品888| 欧美日韩亚洲一区在线观看| 国语自产偷拍精品视频偷| 一区二区成人精品| 狂野欧美激情性xxxx| 亚洲自拍16p| 欧美午夜在线一二页| 最新成人av网站| 免费精品视频| 久久久精品动漫| 国产欧美一区二区三区视频| 亚洲视频香蕉人妖| 亚洲高清自拍| 免费成人毛片| 亚洲国产二区| 噜噜噜久久亚洲精品国产品小说| 亚洲在线播放电影| 欧美性感一类影片在线播放| 日韩视频在线观看国产| 久久三级福利| 久久国产精品一区二区三区| 国产日韩欧美在线观看| 久久不射2019中文字幕| 一区二区三区视频观看| 欧美日韩一区二区欧美激情 | 亚洲欧美激情诱惑| 欧美色精品在线视频| 99在线热播精品免费| 亚洲欧洲日韩综合二区| 欧美国产第一页| 日韩午夜黄色| 在线性视频日韩欧美| 国产精品海角社区在线观看| 先锋影音久久| 欧美在线亚洲一区| 依依成人综合视频| 欧美激情在线有限公司| 欧美激情一区| 在线中文字幕日韩| 亚洲一区国产| 国产一区视频在线看| 免费日韩成人| 欧美精品色一区二区三区| 在线视频免费在线观看一区二区| 91久久嫩草影院一区二区| 欧美日韩国产首页| 久久国产欧美精品| 久久亚裔精品欧美| 夜色激情一区二区| 亚洲一区二区三区免费视频| 国产一级揄自揄精品视频| 老司机午夜免费精品视频| 久久亚洲视频| 一区二区激情视频| 欧美一区二区女人| 亚洲精品专区| 亚洲伊人第一页| 亚洲成人自拍视频| 亚洲国内在线| 亚洲视频在线观看| 午夜亚洲一区| 亚洲精品专区| 午夜日韩视频| 亚洲麻豆av| 久久精品夜色噜噜亚洲aⅴ| 日韩一区二区精品葵司在线| 午夜精品美女久久久久av福利| 亚洲成人在线| 午夜在线不卡| 99香蕉国产精品偷在线观看| 亚洲字幕一区二区| 亚洲乱码国产乱码精品精天堂| 亚洲淫片在线视频| 日韩视频精品| 久久久久久网| 亚洲欧美综合| 欧美日韩精品久久| 麻豆精品在线视频| 国产精品毛片a∨一区二区三区|国| 看片网站欧美日韩| 国产精品亚洲第一区在线暖暖韩国| 欧美大秀在线观看| 国内精品久久久久久久影视麻豆 | 精品69视频一区二区三区| 9国产精品视频| 亚洲人成啪啪网站| 久久久夜精品| 久久精品99国产精品| 国产精品高潮呻吟久久av无限| 亚洲高清精品中出| 一区二区三区我不卡| 亚洲专区一区二区三区| 亚洲一区二区三区四区中文| 欧美精品18videos性欧美| 欧美成人按摩| 亚洲第一综合天堂另类专| 久久久在线视频| 久久久久在线观看| 国产日韩一区二区| 性欧美长视频| 久久久国产精品亚洲一区| 国产精自产拍久久久久久| 亚洲香蕉网站| 欧美一区二区在线| 国产精品一区二区三区久久久 | 亚洲美女色禁图| 免费成人你懂的| 欧美护士18xxxxhd| 最新日韩中文字幕| 欧美黄色精品| 一本色道**综合亚洲精品蜜桃冫| 亚洲美女毛片| 国产精品av免费在线观看| 亚洲美女免费精品视频在线观看| 欧美激情二区三区| 亚洲美女av网站| 亚洲欧美一区二区三区久久 | 久久国产免费看| 国产精品普通话对白| 亚洲一级黄色| 久久亚洲捆绑美女| 亚洲电影免费| 欧美精品色一区二区三区| 中文av一区特黄| 久久精品国产在热久久| 影音先锋亚洲一区| 欧美黑人一区二区三区| 99在线精品视频在线观看| 久久狠狠亚洲综合| 亚洲欧洲另类国产综合| 欧美日韩无遮挡| 欧美一区观看| 亚洲国产日韩一区| 亚洲欧美一区二区三区极速播放 | 欧美.日韩.国产.一区.二区| 亚洲老板91色精品久久| 国产精品久久久久久久久久久久久 | 午夜精品视频在线| 在线欧美日韩| 国产精品高潮呻吟久久| 久久九九免费视频| 亚洲午夜久久久| 欧美黄在线观看| 午夜精品视频在线观看| 亚洲国产毛片完整版| 国产精品久久久久aaaa| 久久久中精品2020中文| 亚洲午夜电影网| 亚洲国产精品成人综合色在线婷婷| 亚洲欧美经典视频| 亚洲精选一区| 在线观看亚洲视频啊啊啊啊| 国产精品草莓在线免费观看| 嫩草国产精品入口| 欧美在线91| 亚洲自拍电影| 亚洲三级色网| 欧美v日韩v国产v| 久久久伊人欧美| 午夜国产精品视频免费体验区| 亚洲国产日韩美|