.Net編譯之AnyCPU - 進階者系列 - 學習者系列文章


   Visual Studio是一款非常強大的IDE工具,它為我們提供了強大的編碼、調試和測試等工具,為我們編好.NET軟件提供了強大的支持。

  今天早晨想到了Visual Studio編譯模式中的CPU類型選項,所以寫一下以記錄。

                       

 

  從圖中可以看到配置項和平台項。

   

 

  點擊“配置管理器”,打開配置窗口。

   

 

  當然,這里的“活動解決方案配置”可以選擇“Debug”和“Release”兩項,分別對應調試版本和發布版本。這個在代碼中我們可以編寫調試代碼以進行調試。

  在”活動解決方案平台“中,就有”Any CPU””.86””.64“項。

   

 

   

  這里可以選擇的是x86的32位平台和x64的64位平台。

  有時候還會有下列平台:

   

 

  我們知道,現在的計算機系統分為32位和64位兩種,所以對應的就有32位和64位的應用程序。

  打開Windows任務管理器,可以看到32位和64位程序的顯示區別(這里我的操作系統是windows 7 Professional 64位 with sp1)。

   

 

  再來看看Visual Studio中的編譯項,這里我們看看Debug和Release的區別。

   

   

 

  看看輸出。

   

 

  再切換到Release,查看輸出。

   

 

  這里看不出什么問題,文件大小也是一致的。但是在實際的編譯過程中,已經有調試項和發行項的區別了。

   

   

 

  從上面我們可以看出,選擇了x86生成的32位DLL和選擇了x64生成的64位DLL從文件上是看不出問題來的。

  但是我們都有一點常識,那就是32位程序可以運行在32位和64位的操作系統上;而64位程序只能運行在64位操作系統上。這個是因為CPU的位長而決定的。

  從這里我們可以看出Visual Studio的強大和兼容性了。一般我們在編譯的時候就選擇”Any CPU“項就可以了,編譯器會自動處理,而在實際的運行過程中也不需要考慮32位或者64位的操作系統,同樣都能運行(這個因為.Net是一種編譯性語言所決定的)。但是有一些Visual Studio 6所編譯的程序暫時只能編譯出32位的應用程序,所以如果遷移到.NET平台的話,那就需要編譯成32位或者64位的編譯器來進行編譯以適應運行環境的問題了。

 

 

Ps.今天是周六,本人來這里墨跡了一下,寫此文完全是因為想到了Any CPU項,在最后,祝大家周末快樂。。。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM