You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

微软XPSDrv打印驱动示例编译错误1297解决方案求助

解决方案

以下是针对所有报错与警告的修复步骤,完全适配虚拟打印机驱动场景,无需删除INF或Manufacturer配置段:

1. 修复Error 1297核心报错

报错原因是当前运行的是Win32架构构建,INF中包含的arm64、ia64等架构的设备匹配段没有对应构建产物,INF校验时判定驱动包没有适配任何当前架构的设备。
修复方式二选一:

  • 若无需兼容ia64、arm64架构,直接修改xdsmpl.inf的[Manufacturer]段,删除不需要的架构后缀:
    [Manufacturer]
    %ManufacturerName%=Standard,NTx86,NTamd64,NTx86.6.0,NTamd64.6.0
    
    同时同步删除inf中对应的[Standard.NTia64]、[Standard.NTarm64.6.0]、[PrinterPackageInstallation.ia64]、[PrinterPackageInstallation.arm64]段即可。
  • 若需要多架构兼容,在Visual Studio的配置管理器中,给每个目标架构单独配置构建参数,构建对应架构版本时只校验对应架构的INF段。

2. 修复Warning 2083未引用段警告

在每个[INSTALL_XDSMPL_FILTERS_*]段中添加对对应架构PrinterPackageInstallation段的引用,比如针对Vista及以上版本的安装段添加:

[INSTALL_XDSMPL_FILTERS_VISTA]
Include=NTPRINT.INF
Needs=PrinterPackageInstallation.amd64 ; 根据实际架构替换为x86等
; 保留原有配置不变

也可以直接在每个[Standard.NTxxx]设备匹配段下新增上述Include和Needs配置,即可解决段未引用的警告。

3. 修复Warning 1324缺少PnpLockdown配置警告

在xdsmpl.inf的[Version]段中添加一行配置即可:

[Version]
Signature="$Windows NT$"
Provider=%ProviderString%
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
Class=Printer
DriverVer=10/17/2008,6.1.6930.0
CatalogFile=XpsDrvSmpl.cat
PnpLockdown=1 ; 新增这行

4. 修复Driver Package无项目引用警告

右键点击解决方案中的「Driver Package」项目,依次选择「添加 -> 引用」,勾选解决方案中所有驱动相关的子项目(过滤器项目、UI插件项目等),确认后重新构建,驱动包会自动打包所有依赖的编译产物,Inf2Cat任务也会正常运行生成签名所需的cat文件。
所有修改完成后重新生成解决方案,即可正常构建出符合要求的虚拟打印机驱动包,完整保留INF与Manufacturer配置满足签名要求。

内容的提问来源于stack exchange,提问作者iheb belaiba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 04:36:02