2011-02-24 107 views
4

我們正在將我們的桌面遷移到Windows 7,64位(來自32位Windows XP)。我們有許多Winforms C#應用程序,並試圖找出在此升級中需要注意的事項。從開發人員的角度來看,有什麼建議或好的資源可以幫助我們平穩過渡嗎?將.net應用程序遷移到Windows 7 64位

+0

32位應用程序在運行64位操作系統時沒有問題 – Adeel 2011-02-24 07:16:06

+0

可能出現[用於C#開發的64位內容]的副本(http://stackoverflow.com/questions/1889941/64-bits-stuff-for-c -development) – 2011-02-24 07:18:08

+1

@Adeel:在os放置文件的位置和註冊表被改變的地方有一些不同。此外,問題是關於Win7 64Bit與XP 32Bit,所以有一些值得注意的差異。 – 2011-02-24 07:23:44

回答

6

的.Net行爲或多或少32bit和64bit OS'es一樣的,所以沒有太多的AFAIK擔心那裏。

你必須知道的主要事情是在操作系統本身的變化:

  • 更改註冊表,因此,如果您讀取或寫入註冊表設置,您可能需要修改代碼
  • 某些文件地點改變了。例如,您有用於64位應用程序的Program Files和用於32位應用程序的Program Files(x86)。另外一些其他系統文件夾已移動。
  • UAC可能會造成麻煩。您必須測試此
  • 您的程序可能無權寫入文件系統或註冊表中的某些位置。您可能不得不要求用戶獲得許可,甚至要求用戶在最壞的情況下以管理員身份運行應用程序。

這些都是我可以在那一刻想到的變化。在大多數情況下,你的應用程序在兩個操作系統上都可以正常運行。

2

如果您的應用程序在Windows註冊表中的OS部分或在Windows系統目錄或Program Files目錄戳周圍,你可以在64位Windows操作系統上運行的32位應用程序時遇到的問題。

絕大多數的應用程序無法在這些核心系統區域周圍的淤泥和運行在64位操作系統贏就好了。

+1

如果您嘗試在32位版本的操作系統上執行此操作,您也會遇到問題。 Windows Vista/7中的UAC並不允許您在Windows XP系統文件夾中使用相同的功能。這應該不是什麼大問題,因爲沒有任何行爲良好的應用程序首先會有這樣的業務。 – 2011-02-24 07:29:15

+0

......以及一些大公司在西雅圖地區已經呼籲人們遵循這種業務的一些指導,因爲他們推出了一些大的產品的地方1995年前 – 2011-02-24 22:50:23

+1

是的,但倔強的開發商不聽這樣的建議,直到OS更改並打破它們的髒代碼。開發人員的動機是痛苦的。 ;> – dthorpe 2011-02-25 00:39:32

相關問題