簡體   English   中英

Windows Server 2008 / Windows 7(x64)上的MSI文件/注冊表失敗

[英]MSI File/Registry failures on Windows Server 2008/Windows 7 (x64)

我正在嘗試使用VS2005安裝程序項目在Windows Server 2008(SP2 x64)和Windows 7(x64)上部署應用程序。 MSI版本(我認為)是2.0。

一切正常,除了某些注冊表項和某些文件未在安裝計算機上復制。 MSI系統沒有任何通知(而且我也不知道MSI是否記錄其操作)。

我的MSI安裝程序項目與這些新的操作系統之間是否存在不兼容性? 在我看來,操作系統在某些方面保護自己免受修改。

例如,我正在嘗試設置注冊表項:

HKEY_LOCAL_MACHINE \\ SOFTWARE \\ Microsoft \\ Windows NT \\ WinLogon \\ SpecialAccounts \\ UserList \\ User

但未創建。 在同一安裝程序中,還有許多其他鍵,它們的創建與預期的一樣(就像以前在Windows XP和Windows Server 2003上一樣)。

為了提供另一個示例,我正在嘗試安裝文件

%SystemFolder%\\ oobe \\ info \\ backgrounds \\ backgroundDefault.jpg

(其中%SystemFolder%通常為“ C:\\ Windows \\ System32”),但是根本不會復制該文件!!!

這是怎么回事?


我發現backgroundDefault.jpg文件位於另一個目錄中:%SystemRoot%\\ SysWOW64 \\ oobe \\ info。

但是我沒有對System(64位)文件夾指定任何內容。 如何在正確的位置復制文件?

首先,關於日志記錄,您可以請求MSI創建其操作的日志文件,如下所示:

msiexec.exe -i my_msi_file.msi -l*vx logfile.txt

這將創建一個名為logfile.txt的日志文件。

其次,聽起來您正在創建32位MSI,並在64位Windows中運行它。 這樣做沒有任何問題,但是請注意Windows正在使用文件系統重定向 Windows有一個單獨的SystemFolder和HKLM / SOFTWARE密鑰來托管32位應用程序。 如果您在HKLM / SOFTWARE的注冊表中查看,則可能會看到一個名為Wow6432Node的子項-這是32位應用程序寫入其注冊表數據的地方。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM