Sysinternals的Portmon:错误2

JAG*_*JAG 57 serial-port

当我尝试连接到本地端口,计算机 - >连接本地,使用Portmon v.3.02,我收到一个错误消息,错误2,在一个小错误对话框中:

在此输入图像描述

我以管理员身份运行该工具(如果没有,我收到错误6).

顺便说一下,这是一个Windows 7 x64.在32位,在Windows 7 x86中,它工作正常.我该如何解决这个问题?

swa*_*kat 61

Sysinternals的Portmon仅适用于32位版本的Windows.它不支持64位(可能是它的驱动程序没有签名).

来自Portmon主页:

  • 运行:
    • 客户端:Windows XP(32位)和更高版本(32位).
    • 服务器:Windows Server 2003(32位)和更高版本(32位).

  • @JAG,它是2011年,他们仍然没有更新它.很确定它永远不会发生. (8认同)
  • 它是2012年,仍然是x64的禁忌. (8认同)
  • 它的2014年仍然没有发生:) (8认同)
  • 现在是2016年:) (7认同)
  • 这是未来的2027年; 仍然没有更新. (6认同)
  • 这是2013年,但仍未发生. (5认同)
  • 它是2015年,没有更新.使用它和兼容模式无法使用Surface上的USB设备. (3认同)
  • 好吧...是2019年。面对它。 (3认同)

小智 9

在Windows资源管理器中,右键单击portmon.exe- >选择属性 - >单击兼容性选项卡,然后在Windows XP兼容模式下运行.它在Windows 7 64位中运行良好.

  • 不适合我(Win7x64).给出了同样的错误. (23认同)
  • 似乎在Windows 10/x64中不起作用 (4认同)
  • 这对我在Win8 X64上工作但是....我也必须在管理模式下运行. (3认同)
  • 这将允许您"连接本地"但不实际打开端口.我的猜测是,这与未签名的驱动程序(Windows 7/8中需要)或非x64驱动程序有关. (2认同)

dav*_*vid 6

“错误2”是“找不到指定的文件”,即找不到所需的DLL文件。

最初,当您尝试从网络位置运行 Portmon 时,您会收到此错误:这破坏了安全信任,导致 Portmon 不受信任(或者可能只是以某种方式弄乱了搜索路径)。

在我的 Windows 7 64 位副本上,Microsoft Dependency Walker (depends.exe) 告诉我 PORTMSYS.SYS(由 Portmon.exe 创建/加载的文件)对 ci.dll、clfs.sys、hal.dll 具有未解决的依赖关系和 kdcom.dll。

这些是

code integrity
common log file system
hardware abstraction layer
kernel debugger com
Run Code Online (Sandbox Code Playgroud)

库,而且它们实际上并没有丢失:如果丢失了,Windows 将无法启动。但是,我在 SysWow64 中没有看到这些文件的副本。这对我来说问题不在于 portman.sys:问题在于 Windows 7/64 位中的 win32 兼容层:它不支持正确的调试。

现在已经是 2018 年了。Portmon 还没有 64 位版本。串行端口是一个传统标准。Windows 7 的问题在 Windows 8.1 的发布中得到了解决。但是,向后移植到 Windows 7 的某些 Visual Studio 实用程序或安全更新有可能解决该问题。也许熟悉 SysWow 和调试的人会发表评论。


cod*_*ion 5

我使用过 AccessPort http://sudt.com/en/ap/download.htm,效果很好。与波特蒙非常相似

  • -1 一点也不相似。它无法嗅探,只有在连接尚未打开的情况下才能连接,所以基本上就像 putty 和其他十几种无聊工具一样。 (4认同)