1、与客户沟通提供测试虚拟机(无业务可重启),动手验证具体无法保存的配置,发现只有首选项高级选项中的配置无法保存。
2、测试完后使用notepad++在VDShell日志即%vdi%\用户名.log日志中搜索"recover"(不区分大小写)有恢复打印机配置成功的日志:

说明打印机配置保留的功能本身是正常的。基本可以判断是这些配置保存的地方较为特殊而没有被保存下来。
3、于是使用Procmon抓取设置打印机首选项高级选项时,注册表和文件的操作,具体操作如下:
3.1、右键管理员身份运行procmon工具,按照如下设置:
3.2、然后打开打印机首选项的高级选项,调整对应的值后不点确定。
3.3、然后参考如下设置配置软件。
PS:第一步捕获的窗口选择打印机首选项的高级选项的窗口,步骤2、3不分先后。
3.4、点击procmon的捕获
按钮,开始捕获注册表文件的活动,然后马上在打印机首选项的高级选项的窗口上点【确定】按钮,然后再点击procmon的捕获
按钮,停止捕获。主要目的就是精简procmon的输出。
3.5、然后procmon节目,按Ctrl+F设置不区分大小写的方式搜索打印机的名称。找到对应的注册表或文件

3.6、将找到的注册表保存到本地文件中,然后手动修改打印机的配置
再双击注册表文件导入注册表,如果刚刚修改的值被还原了,说明此配置就保存在此注册表路径下。
此案例中最终找到的注册表路径为:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy
4、然后在VDC的打印机配置管理中将对应的注册表路径添加进去
注意事项:
1、打印机型号需要跟虚拟机内部的打印机型号名称一致,否则无法保留;设置完后需要先使用桌面运维工具保存一下打印机配置
2、此处配置的注册表路径不支持递归保留(会导致其它问题),因此需要单独一条一条配置,具体如下(其中wddy即为打印机的名称):
3、如果同时有配置就近打印,这就近打印配置优先
4、目前测试验证基本只要保存
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Settings 这个注册表就能保存打印机配置,具体建议实际测试验证
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Data Fonts
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Data Fonts\0000
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Downloaded Fonts
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Model
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Presets
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Settings
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Settings\Cleaning
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\wddy\PrinterDriverData\Settings\Status
5、后续客户又反馈此打印机新建的卷的设置无法保留,具体设置如下
后使用procmon发现此配置是保存在下面注册表中,于是在VDC的特殊打印机配置中加上后解决。
HKEY_LOCAL_MACHINE\SOFTWARE\Seagull Scientific\Drivers\Paper Sizes