我正在创建安装和部署项目,其中我有一个屏幕保护程序文件和Framework 4.0文件。我正在使用项目创建的安装程序安装此设置。我安装此软件包的系统是64位系统。现在我想在System32文件夹中安装我的屏幕保护程序,但它已转到SysWow64,虽然我选择了默认位置“C:\ Windows \ System32”。 请尽快提出这个问题的建议。
答案 0 :(得分:1)
我在the comments中提出的问题很重要:
您的屏幕保护程序是否编译为32位或64位应用程序?
这笔交易是32位应用程序进入SysWow64文件夹,64位应用程序进入System32文件夹。很简单,对吧?
我知道这似乎是倒退 - 包含 32 位应用程序的应用程序名称中包含 64 - 但这是出于向后兼容的原因。很多人将System32之类的路径硬编码到他们的应用程序和安装程序中。让这成为你的一个教训:承诺这些罪将在未来导致不可避免的丑陋。
因此,如果您的屏幕保护程序编译为32位应用程序,它将属于SysWow64文件夹,而不是System32文件夹。系统足够聪明,可以知道这一点,因此它会自动执行正确的操作并将应用程序重定向到相应的文件夹中。在32位Windows安装中,您的32位屏幕保护程序确实会放入System32文件夹中。
我想你可以覆盖这种行为,但我不打算告诉你怎么做。如果您确实希望屏幕保护程序位于64位Windows上的System32文件夹中,则应将其重新编译为64位应用程序。