0

我们有 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、Windows 8/8.1/10 等 32/64 位风格的 Windows 操作系统。

4

1 回答 1

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 日志和随附的备注。

于 2016-09-15T16:46:44.657 回答