gpt4 book ai didi

64-bit - 在x64系统中从NSIS安装程序安装驱动程序

转载 作者:行者123 更新时间:2023-12-04 05:21:44 27 4
gpt4 key购买 nike

我想将对x64 OS的支持添加到我的NSIS安装程序中。安装程序的任务之一是驱动程序安装。我为此任务编写了一个特殊的NSIS插件。该插件使用Driver Install Frameworks API (DIFxAPI)安装驱动程序。

问题在于此API在WOW64中不起作用。

有什么方法可以使用NSIS创建x64安装程序应用程序?有人用NSIS解决了类似的问题吗?

附注:我现在看到的唯一解决方案是从安装程序运行另一个应用程序。这将是安装驱动程序的x64可执行文件。但是这种方式对我来说似乎有点困难。因此,我对其他解决方案感兴趣。

最佳答案

我遇到了类似的问题,我认为目前唯一的解决方案是通过CreateProcess运行其他内容(64位)。

尽管我自己还没有尝试过,但该文档似乎使用DPInst(http://www.microsoft.com/whdc/driver/install/32-64bit_install.mspx)有解决方案。

将添加我发现的其他任何内容。

额外的:
现在已经开始工作了,归结为

  • 下载Windows驱动程序工具包版本7.1.0
  • 挂载ISO并将完整的开发环境-> Tools安装到C:\
  • 复制C:\WinDDK\7600.16385.1\redist\DIFx/dpinst/EngMui/amd64/dpinst.exemyApp/drivers/dpinst64.exe
  • C:\WinDDK\7600.16385.1\redist\DIFx/dpinst/EngMui/x86/dpinst.exe复制到myApp/drivers/dpinst32.exe
  • 将驱动程序包(inf文件等)复制到myApp/drivers
  • myApp.nsi的顶部添加!include "x64.nsh"
  • myApp.nsi的install部分中的某处添加:
  • ${If} ${RunningX64}
    ExecWait '"$INSTDIR\drivers\dpinst64.exe" /c /q /sa /sw /PATH
    "$INSTDIR\drivers"'
    ${Else}
    ExecWait '"$INSTDIR\drivers\dpinst32.exe" /c /q /sa /sw /PATH
    "$INSTDIR\drivers"'
    ${EndIf}

    关于64-bit - 在x64系统中从NSIS安装程序安装驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2464843/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com