在通过安装程序安装INF时,文件被复制到SysWOW64而不是System32

时间:2016-09-15 05:14:04

标签: c# visual-studio-2013 installer system32 syswow64

我们有INF文件,它将一个.sys文件安装到Windows驱动程序文件夹中。情景如下:

1)从文件资源管理器安装INF。右键单击INF文件,然后单击“安装”。在这种情况下.sys文件在Windows \ System32 \ drivers文件夹下获得副本。

2)创建控制台应用程序以使用进程对象下的RunDll32 / CMD进行安装并安装INF文件。在这种情况下.sys文件在Windows \ System32 \ drivers文件夹下获得副本。

3)创建了x86安装程序,其中包含要在进程对象下使用RunDll32 / CMD进行安装的安装程序类,并安装INF文件。在这种情况下,.sys文件在Windows \ SysWOW64 \ drivers下获得副本。

我们的目标是在Windows \ System32 \ drivers文件夹下复制.sys文件,而不管WinXP,Windows7,Windiows 8 / 8.1 / 10等32/64位风味Windows操作系统。

1 个答案:

答案 0 :(得分:0)

Windows Installer(MSI)安装时坚持在x86设置中将32位组件安装到32位位置。尝试将32位文件定向到64位位置将导致重定向。可以安装64位安装。

不同的架构需要不同的MSI:

https://blogs.msdn.microsoft.com/heaths/2008/01/15/different-packages-are-required-for-different-processor-architectures/

并特别查看WIN64DUALFOLDERS日志和随附的备注。