我们目前正在测试一个旧的 VB6 应用程序的错误修复,该程序的初始版本将获取 PID 并将其存储在 int 中,然后将其写入数据库。这可以正常工作,直到您的应用程序被分配一个高于 32768 的 PID,在这种情况下,您会溢出并且应用程序会死掉。
我们通过将所有内容更改为 long 而不是 int 来解决此问题。但现在我们有一个问题测试。我们仅在生产环境中很少看到此问题(但在发生时会产生破坏性影响),并且从未在测试中看到。我试图通过产生大量程序来引发高 PID,但我从未设法让它超过 PID 25000。
我确实找到了一个名为 HighPid (http://winprogger.com/?p=29) 的工具,但遗憾的是它似乎并没有兑现它的承诺。那么有没有人有类似的(但有效的)工具,或者其他一些在 Windows 服务器上强制高 PID 的技巧?