雖然在.NET應用程序的工作(比方說一個Asp.Net一個),還有在64位平臺上工作時,你會做事情的方式的任何差異,相對於工作一個32位平臺。編程爲64位平臺
,因爲你正在使用的框架,該框架是照顧大多數事情對你,對我可以想象很少?
但是,請給出您的意見。
謝謝。
雖然在.NET應用程序的工作(比方說一個Asp.Net一個),還有在64位平臺上工作時,你會做事情的方式的任何差異,相對於工作一個32位平臺。編程爲64位平臺
,因爲你正在使用的框架,該框架是照顧大多數事情對你,對我可以想象很少?
但是,請給出您的意見。
謝謝。
有兩種情況下,考慮到64位岬可能是有趣:
如果你使用p/invoke,那麼你需要確保你有64位版本的DLL可用。這不是一個問題,如果你調用MS提供的DLL,如kernel32,因爲它們已經在32位和64位平臺上得到了相同的名字(奇怪,我知道),所以你的64位應用程序將隱式鏈接到正確的版。但是,如果您使用的是第三方DLL,並且您的64位應用程序嘗試鏈接到32位DLL,則會得到運行時異常。
這也意味着,如果你在使用過程中的COM對象你有問題。一個64位應用程序可以調用一個32位的進程外COM對象(反之亦然),因爲您正在移動一個進程邊界,COM將負責爲您編組。
除此之外,該框架可以照顧到大多數事情你。你永遠不必擔心指針大小,並且clr類型具有明確的大小(int總是32位,長總是64位)。在純粹的.NET世界中,幾乎沒有什麼可擔心的。當你開始在沙箱外移動時,你必須更加小心。