• <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>

            浪跡天涯

            唯有努力...
            努力....再努力...

            vs2005奇怪的斷點(diǎn)無效問題

            最近一工程中,在調(diào)試的時候,有些cpp文件都可以設(shè)置斷點(diǎn)并且跟進(jìn)去,但是有一個cpp文件總是不能設(shè)置斷點(diǎn),提示“當(dāng)前不會命中斷點(diǎn)。源代碼與原始版本不同。” 重新更換過n次文件都不起作用,然后在goole搜索此類類似問題,找到下篇文章,然后我把那個cpp文件用記事本打開,另存為unicode格式,再重新編譯,最后問題解決!也可以更改vs2005的設(shè)置,選項(xiàng)->常規(guī),將要求源文件與原始版本完全匹配的勾取消就可以了!

            清理整個解決方案,重新編譯,無效。刪除整個目錄,從SubVersion服務(wù)器上Down下來重新來過,一樣無效。上網(wǎng)搜索,未果。郁悶地放手了。

            修一個Bug,提交,然后更新了一下,編譯,運(yùn)行,發(fā)現(xiàn)我也染上這個癥狀了——只有那個文件無法插入斷點(diǎn)。倒有些安心了,看來不是VC的Bug,而是源代碼的問題。把這個文件回滾到更新前的版本,果然就沒問題了。更新到下一個版本,問題就出來了。查看改動,沒瞧出來什么。忽然發(fā)現(xiàn)有一個不常見的警告:“warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失”。呵呵,應(yīng)該就是它了。

            警告有兩個,一個是文件的,不帶行號,另一個帶行號。那一行是一個case語句,最后加了一句中文注釋。把注釋刪掉,問題解決。把代碼拷貝到UltraEdit中看十六進(jìn)制代碼,逐個字節(jié)濾過去,沒發(fā)現(xiàn)什么奇怪的。然后開始逐步逼近問題,把注釋前后漢字逐個拿掉,直到問題消失,最后剩下來的核心詞是“即時消息”,搜索這個詞,果然在整個項(xiàng)目里只有一個。在這個詞前面增、刪一個空格,問題就消失。郁悶的是把同一行代碼拷貝到其他文件、位置都不會有這個問題。

            恢復(fù)所有改動,更新到最新版本,問題又變了:警告只剩下一個,沒了行號!用插入空格的方法定位問題,發(fā)現(xiàn)錯誤向前移動了幾行。而且這次就算把警告消掉,還是無法添加斷點(diǎn)。嘗試了好一會兒沒有效果,干脆用VC直接把整個文件格式化了一次,斷點(diǎn)又可以用了。而且,這次再怎么插入空格都不會有C4819了。對比了一下修改前后的文件,依然沒有什么發(fā)現(xiàn)。

            搜索了一下,其他人也遇到過C4819,有的是因?yàn)閁nix換行格式,甚至boost庫中一個非ASCII作者名都會引發(fā)這個錯誤,但是這里應(yīng)該是中文雙字節(jié)字符錯位的問題吧。因?yàn)榫娴燃夐_到了4,所以各種警告有些泛濫,他們又沒有及時處理,這個警告就被淹沒在警告堆里了……

             

             

            posted on 2008-01-24 14:33 浪跡天涯 閱讀(20084) 評論(15)  編輯 收藏 引用 所屬分類: C++

            評論

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-01-24 16:14 qwerqw

            good,我也遇到過  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-01-24 16:58 浪跡天涯

            呵,好久以前就遇到過這個問題,將解決方法發(fā)到MSN Space上了。MSN Space速度太慢,但是每天搜索這個問題的人還很多,所以就發(fā)到這個CPP Blog上來了,希望能給大家一個參考!  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-01-24 17:41 夢在天涯

            en ,不錯,很好的建議哦!

            很有用啊!

              回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題[未登錄] 2008-01-25 21:08 koobin

            我也遇到過,頁面的編碼不對,將頁面另存為的時候選擇高級,把編碼改一下就好了。  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-01-30 09:23 追夢時代

            我也遇到過相同的問題,也是斷點(diǎn)無法跟進(jìn)。解決方法是在斷點(diǎn)之前加上MessageBox就可以了,原理未知  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-01-30 09:53 浪跡天涯

            斷點(diǎn)無法跟進(jìn),彈出“沒有可用于當(dāng)前位置的源代碼”時,有時候把這個函數(shù)刪除了,然后重新添加一次就可以解決。  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-04-11 10:25 freewave

            保存成Unicode編碼就解決問題了。
            thanks!   回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-07-16 08:37

            我們也發(fā)現(xiàn)這個問題,發(fā)現(xiàn)中文版VC出問題概率更大些  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-07-30 09:27 zl

            工具->選項(xiàng)->調(diào)試->常規(guī),將”要求源文件與原始版本完全匹配”的勾取消就可以了!  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-08-24 16:21 包巖峰

            我試過了,把BIN目錄下所有引用刪除,重新添加引用,再重新生成解決方案,OK!!!  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-12-04 16:16 小豬

            恩,剛試過了,把其中一個函數(shù)的調(diào)用刪除,再調(diào)用一次就好了  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-12-04 16:19 小豬

            我寫了一個函數(shù):private void ChangeBusStatus(){}
            在另外一個按鈕事件里調(diào)用了它。按照剛才那位仁兄的說法,我把它在事件中的調(diào)用: ChangeBusStatus();刪除了,然后重新寫一遍,問題就解決了。不知道原因是什么。在我這里沒有提示任何錯誤或警告。  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2008-12-04 16:24 小豬

            問題出現(xiàn)后,我將斷點(diǎn)位置換了地方,仍然出現(xiàn)源文件與原始版本不匹配的提示。我不知道具體出問題的函數(shù)是哪個,只是憑感覺認(rèn)為是private void ChangeBusStatus(){}。一試就成功了,所以我不知道就是這個函數(shù)出的問題,還是隨便改個函數(shù)就能解決問題。  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2013-05-31 15:46 peach5460

            嗯,改了頁面編碼以后就好了...  回復(fù)  更多評論   

            # re: vs2005奇怪的斷點(diǎn)無效問題 2013-06-28 16:46 wenmhappy

            我也遇到此類問題,打代碼如下:

            #if 0
            ....

            #else
            if ( ){
            #if 1
            > .... // 設(shè)了斷點(diǎn),無效
            #endif

            }
            else{
            ....
            }
            #endif

            把斷點(diǎn)所在的#if 1 #endif 去掉后,該源文件的其他所有斷點(diǎn)都可以用了。  回復(fù)  更多評論   

            <2008年11月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            30123456

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(22)

            隨筆分類(30)

            隨筆檔案(29)

            文章分類

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            一级女性全黄久久生活片免费| 亚洲国产精品无码久久一区二区| 无码人妻久久一区二区三区免费 | 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 久久天天躁狠狠躁夜夜2020| 中文字幕久久精品 | 色综合久久88色综合天天 | 久久青青草视频| 久久精品国产99国产电影网| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 久久久久亚洲av综合波多野结衣| 亚洲AV成人无码久久精品老人| 欧美久久综合性欧美| 狠狠色婷婷久久一区二区| 久久久久久a亚洲欧洲aⅴ| 亚洲中文字幕无码久久精品1| 国产亚洲精久久久久久无码AV| 国内精品综合久久久40p| 久久免费国产精品| 久久精品中文闷骚内射| 久久只这里是精品66| 精品久久久久久国产三级 | 久久中文字幕人妻熟av女| 亚洲国产天堂久久综合网站| 久久香综合精品久久伊人| 久久无码专区国产精品发布| 久久涩综合| 伊人色综合久久天天网| 精品久久久久中文字| 欧美久久综合性欧美| 亚洲一区二区三区日本久久九| 欧美大香线蕉线伊人久久| 久久精品人人做人人爽电影| 久久无码AV一区二区三区| 欧美精品九九99久久在观看| 人妻丰满?V无码久久不卡| 欧美一级久久久久久久大片| 一本久久免费视频| 色综合合久久天天给综看| 久久精品国产欧美日韩99热| 久久精品无码一区二区WWW|