今天在做專案的時候,乙個任務是用到新的dll,要把老的dll刪除了,當時想,這個不簡單麼?
右鍵刪除就ok了,然後試了試刪了,重新編譯了,發現為原來的dll等檔案又出來的。試了幾次都這個樣子。
然後上網搜了下:
bin是放最終**的目錄
obj放中間**的目錄
在編譯時,需要對檔案**進行掃瞄,而在這過程中需要乙個中間檔案。
所以編譯需要大量的中間檔案放臨時結果,為下一步做準備。c#是物件導向的複雜度更高!obj目錄就是用來存放臨時檔案的。
而bin,就是我們所知道的生成檔案,當你刪除後再出來是因為
一:編譯是的生成檔案
二:引用外部的dll會有個重新整理再拷貝的機制
所以在你刪除後,重新編譯會重新出來。
這個時候,如果我們需要徹底刪除原有檔案,只需要將原有檔案的引用移除掉,再刪除相應的檔案就ok了。
乙個關於bin目錄下DLL動態編譯的問題
昨天碰到乙個怪怪的問題,有乙個button點選之後所有session都失效了,這段程式一直是執行正常的,突然出問題讓我有點不理解 後來終於找到了原因,這個出問題的button點選後會自動編譯乙個新的dll檔案出來,原來我們所有的業務dll都是放在乙個專門的ehrcorecomponents目錄,但是...
VS編譯DLL檔案的簡單例項
建立dll工程 檔案 新建 專案 visual c win32 win32控制台應用程式 win32專案也可以 增加並編寫原始檔 a.c include a.h int a test char x 增加並編寫標頭檔案 a.h extern c declspec dllexport int a tes...
關於VS2010下生成lib和dll,並使用的過程
首先要準備好.h和.cpp檔案 一 lib 下一步,最好不要選預編譯選項!選預編譯頭的話,就在.cpp檔案中新增 include stdafx.h 然後新增進來.h和.cpp檔案,就可以直接點生成解決方案了。別點除錯,因為沒有入口函式。這裡要注意你生成lib的專案配置屬性要和你使用此lib的專案配置...