我正在创建安装和部署项目,其中我有一个屏幕保护程序文件和 Framework 4.0 文件。我正在使用项目创建的安装程序安装此设置。我正在安装此软件包的系统是 64 位系统。现在我想在 System32 文件夹中安装我的屏幕保护程序,但它会转到 SysWow64,尽管我选择了默认位置“C:\Windows\System32”。请尽快提供有关此问题的建议。
问问题
610 次
1 回答
1
我在评论中提出的问题很重要:
您的屏幕保护程序是编译为 32 位还是 64 位应用程序?
交易是 32 位应用程序进入 SysWow64 文件夹,而 64 位应用程序进入 System32 文件夹。很简单,对吧?
我知道这似乎是倒退的——包含32位应用程序的名称中有 64——但它是出于向后兼容的原因而完成的。许多人将路径(例如 System32)硬编码到他们的应用程序和安装程序中。让这成为你的一个教训:犯下这些罪会导致未来不可避免的丑陋。
因此,如果您的屏幕保护程序编译为 32 位应用程序,它属于 SysWow64 文件夹,而不是 System32 文件夹。系统足够聪明,可以知道这一点,因此它会自动做正确的事情并将您的应用程序重定向到适当的文件夹中。在 32 位 Windows 安装中,您的 32 位屏幕保护程序确实会放入 System32 文件夹中。
我想你可以覆盖这种行为,但我不会告诉你如何。如果您真的希望您的屏幕保护程序位于 64 位 Windows 上的 System32 文件夹中,您应该将其重新编译为 64 位应用程序。
于 2013-05-09T07:56:58.820 回答