2010-08-04 248 views
3

我们有一个为Windows Server 2003开发的自定义应用程序,但自从将其迁移到Windows Server 2008 R2后出现问题。杀死进程

部分应用程序/进程是使用C#代码杀死Windows进程。这在Windows 2003上运行良好,但在Windows 2008 R2上代码无法终止进程。有没有人遇到过类似的问题,或者有什么想法可以解决问题?

+4

确保您的代码在具有足够特权来杀死进程的帐户下运行。 – Oded 2010-08-04 10:05:44

+0

“代码无法终止进程” - 会发生什么?没有?你收到一个例外吗?哪一个?什么是确切的错误信息? – dtb 2010-08-04 10:11:19

+0

感谢您的意见。 该帐户是本地管理员的方块。当这种失败,错误被写入到事件日志: 错误模块名称:KERNELBASE.dll,版本:6.1.7600.16385,时间戳:0x4a5bdfe0 异常代码:0xe053534f 故障偏移:0x000000000000aa7d 出错进程ID:0X% 9 错误应用程序开始时间:0x%10 错误应用程序路径:%11 错误模块路径:%12 报告ID:%13 该进程仍保留在内存中。不知道这是否有帮助。 非常感谢。 – Paul 2010-08-04 10:38:34

回答

4

异常代码:0xe053534f

问题时有事情做与这个网站的名字总是令人振奋的。微软程序员经常选择可以解码为3个字母首字母缩写词的异常代码。 C++异常的异常代码是0xe04d5343,最后3个十六进制字节解码为“MSC”,Microsoft C++。受管理的异常的例外代码是0xe0434f4d,这是.NET的早期名称“COM +”

给你的例外相同的待遇,你会得到“SSO”。这意味着“软堆栈溢出”。这与普通的堆栈溢出完全相同,除了系统可预测到它之外。它知道,如果它完成了调用,该程序将因为没有足够的堆栈空间而被弹出。

恰好为什么你的应用程序正在堆栈溢出爆炸并不清楚你提供的信息。你必须调试它。