为什么 user32.dll 中的断点不能中断另一个进程

Why breakpoint in user32.dll can't break another process

我在user32!MessageBoxW下了一个断点,这个断点只打断了我自己的进程。如果另一个也调用 MessageBoxW,它不会在这个断点处中断。谁能告诉我为什么?非常感谢。

断点通常通过替换断点位置处的指令来实现(参见BreakPoint)。这意味着您的进程可能会使用 dll 的更改版本,如 foo~.dll,但您 IDE 之外的其他进程正在使用原始 foo.dll。这就是它们不会破裂的原因。