1. 程式人生 > >解決vs F5執行時提示out of date的問題

解決vs F5執行時提示out of date的問題

          我們都知道,vs開始除錯執行時,如果檢測到原始檔比生成時的標記來的新,就會提示out of date

          常見的原因一般是改動了程式碼(增量編譯可解決)或者遷移了整個工程的位置(重新編譯可解決)

          比較特殊的情況是,測試時間相關的功能時,改動了系統時間到一個比較靠後的時間之後並儲存了程式碼,使得原始檔的時間戳比較靠後,會有這樣的問題。這時候rebuild也不能解決問題,需要找到那個時間不正常的原始檔,然後把時間改成正常的(重新以正常時間儲存一下),或者可以考慮刪除掉程式碼重新取一份。

          但最近換過一次電腦以後,我又發現了此問題,rebuild solution也不能解決,且我最近並沒有做過修改系統時間之類的操作。

          於是問了下偉大的谷歌娘,找到了解決方案。

           http://stackoverflow.com/questions/2762930/vs2010-always-thinks-project-is-out-of-date-but-nothing-has-changed

           翻譯成中文,就是

          1. 關閉vs

          2. 開啟vs的目錄,比如 D:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE  (右鍵點vs圖示,熟悉,開啟檔案位置就是)

          3. 找到devenv.exe.config 這個檔案,在 </configSections> 這行後面加上

    <system.diagnostics>
        <switches>
            <add name="CPS" value="Verbose" />
        </switches>
    </system.diagnostics>

          4. 來這裡 http://technet.microsoft.com/en-us/sysinternals/bb896647 下載  DebugView,並開啟

          5. 重新開啟vs,開啟工程,再按一次F5

          6. 在DebugView中尋找 not up to date,就會確切提示,究竟是哪個檔案出問題了,這樣就能針對性的解決問題了。

          經過這樣的步驟,原來這次是因為工程裡的resource目錄下的一張無用圖片的實體被刪除了,但沒有在工程中移除導致的。在工程中一併移除掉,問題得到了解決。