簡體   English   中英

Inno Setup以32位模式安裝到SysWOW64

[英]Inno Setup install to SysWOW64 in 32Bit mode

我正在創建一個僅需要安裝32位文件的安裝程序,它們可以在64位和32位計算機上工作。

我在64位計算機上運行Inno安裝程序,即使安裝模式為32位,文件仍最終保存在SysWOW64文件夾中。 Dest指令設置為{sys}

Source: "C:\Users\Lablabla\Documents\Visual Studio 2013\Projects\Test\MyDll.dll"; DestDir: "{sys}"; Flags: 32bit

奇怪的是,日志顯示目標為system32 ,安裝模式為32位

2015-04-12 01:04:14.046   64-bit Windows: Yes
2015-04-12 01:04:14.046   Processor architecture: x64
2015-04-12 01:04:14.046   User privileges: Administrative
2015-04-12 01:04:14.046   64-bit install mode: No
....
2015-04-12 01:04:20.237   Dest filename: C:\Windows\system32\MyDll.dll

但是,完成安裝后,即使可執行文件位於“ Program Files (x86)的正確位置,該文​​件也位於SysWOW64文件夾中。

即使將特定的32bit標志設置為dll文件,也會發生這種情況。

安裝非常簡單,只有這個dll和一個可執行文件。 沒有注冊表或其他更復雜的東西。

任何人都經歷過這樣的事情嗎?

謝謝

SysWOW64文件夾是在64位系統上進行32位安裝的正確位置,就像Program Files (x86)文件夾是正確的位置一樣。 SysWOW64是“ Windows 64位Windows”安裝上的System32文件夾。

誠然,為避免混淆,Microsoft應該在命名這些名稱方面做得更好。 即,在64位安裝上, System32實際上是“ System64”,而SysWOW64是“ System32”,就像普通的Program Files實際上是“ Program Files(x64)”一樣,如果您想這樣想的話。 所有32位應用程序都在64位Windows上的WOW64(Windows 64位為Windows 32位)模擬器中運行。

暫無
暫無

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

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