我有一個VSTO安裝項目,按照1。 本網站提到,如果我將程序安裝在Program files文件夾中,則不需要實現安全性;但它沒有解釋如何在安裝項目執行這一(如自定義操作等)如何在Windows安裝程序中檢查程序文件的文件夾
注:
需要能夠檢測到C:在32位\ Program Files文件\系統或在x64系統下的C:\ ProgramFiles(x86)\。
我正在使用VS2010安裝項目。
我有一個VSTO安裝項目,按照1。 本網站提到,如果我將程序安裝在Program files文件夾中,則不需要實現安全性;但它沒有解釋如何在安裝項目執行這一(如自定義操作等)如何在Windows安裝程序中檢查程序文件的文件夾
注:
需要能夠檢測到C:在32位\ Program Files文件\系統或在x64系統下的C:\ ProgramFiles(x86)\。
我正在使用VS2010安裝項目。
Visual Studio安裝項目已經爲Application Folder使用ProgramFilesFolder屬性。此屬性在32位計算機上解析爲「C:\ Program Files」,在64位計算機上解析爲「C:\ ProgramFiles(x86)」。
此方法在C#所需要的路徑(自定義操作):
public static string GetProgramFilesPath()
{
Environment.SpecialFolder folder = Environment.Is64BitOperatingSystem? Environment.SpecialFolder.ProgramFiles: Environment.SpecialFolder.ProgramFilesX86;
return Environment.GetFolderPath(folder);
}
注:Environment.Is64BitOperatingSystem是支持.NET4.0起。它使用任何CPU選項。
我的問題是如何以編程方式檢測程序文件,以避免用戶將其安裝在錯誤的路徑 – 2011-03-14 01:15:43
ProgramFilesFolder屬性由Windows安裝程序自動設置,因此您可以從此值獲取路徑。您也可以使用Windows API:http://msdn.microsoft.com/en-us/library/bb762181(VS.85).aspx – 2011-03-14 07:57:15