我正在尝试安装WDK中提供的Windows示例端口监视器(localmon)。但是我在安装时遇到错误:
安装端口监视器'DDK示例端口监视器'时发生错误。请联系制造商寻求帮助。
我使用以下说明进行安装: -
打开“设备和打印机”文件夹。右键单击我的目标打印机,然后选择“打印机属性”。单击“端口”选项卡,然后单击“添加端口...”按钮。在“打印机端口”对话框中,单击“新端口类型...”按钮。在文本输入框中键入INF文件的路径,然后单击“确定”。
我使用的是Windows 7,64位版本。以下是我的INF文件。
; monitor.inf
;
; Installation inf for printer port monitor
;
; (c) Copyright 2001-2003 DDK Example for print monitor installation
;
[Version]
Signature="$Windows NT$"
Provider=%PMProducer%
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
Class=Printer
[PortMonitors]
"DDK Sample Port Monitor" = sampleportmon
[sampleportmon]
CopyFiles=@ddklocalmon.dll, @ddklocalui.dll
PortMonitorDll=ddklocalmon.dll
[SourceDisksFiles]
ddklocalmon.dll=1,,
ddklocalui.dll=1,,
[SourceDisksNames]
1="Sample Port Monitor Installation Disk",,,
[Strings]
PMProducer="Sample Port Monitor Company, Inc."
有人可以帮助我吗?
非常感谢!!
答案 0 :(得分:3)
我终于能够解决这个问题了。这是一个权限问题。在Windows 7中以管理员权限访问打印机属性的方法是通过控制面板,系统和安全,管理工具,然后右键单击打印管理,然后以管理员身份运行。一旦我这样做,我就能安装端口监视器。
答案 1 :(得分:0)
在端口监视器的INF文件中,需要将其定向以将端口监视器DLL安装到Windows \ System32中。
以下是针对“语言端口”监视器的WDK示例,您可能会认为[DestinationDirs]目录ID可能是66002。请注意,端口监视器示例.inf省略了提供[DestinationDir]部分的内容。 https://docs.microsoft.com/en-us/windows-hardware/drivers/print/installing-a-print-monitor
有关打印机类别的文档似乎证实了这一点。 https://docs.microsoft.com/en-us/windows-hardware/drivers/print/printer-dirids
[DestinationDirs]
DefaultDestDir = 66002
分隔:66002;用途:表示要复制到本地系统\ System32的其他文件的目录路径。参见此表后面的段落。目录内容:打印监控文件
请注意,INFGate工具将提供以下警告:
.\monitor.inf(xx): warning 8503: (DW22.23.8503) Use of DirID 66002 prevents full remote/point-and-print installation.
但是,这在实践中仍然行不通。再次尝试使用66002安装端口监视器会产生与我们开始时相同的错误。
Installing Port Monitor
---------------------------
An error occurred installing port monitor 'DDK sample port monitor'. Please contact the manufacturer for assistance.
---------------------------
OK
---------------------------
驱动程序文档中有另一个目录ID列表,并且还有一个:
https://docs.microsoft.com/en-us/windows-hardware/drivers/install/using-dirids
11系统目录。这等效于Windows 2000和更高版本的Windows的%SystemRoot%\ system32。
我的经验是,在Windows XP和10的端口监视器上,对System目录使用Dirid值11似乎可行。
[DestinationDirs]
DefaultDestDir = 11
请注意,尽管INFGate可以正常使用,但仍会提供警告。
.\monitor.inf(56): warning 8505: (DW22.23.8505) DirID DefaultDestDir=11 is discouraged. Should be in 66000-66004 range in order to support remote install.