查看进程的堆栈或正在调用或使用的文件和程序集

问题描述:

Al!这听起来很疯狂。查看进程的堆栈或正在调用或使用的文件和程序集

我想知道是否有可能看到代码或特定进程正在使用的东西。我有一个计划的任务,应该由一个进程运行。该应用程序的字体结束表示该计划的任务已成功执行,但在日志中没有看到任何内容。

我想知道是否有工具来查看过程正在做什么。

+1

如何处理一些情况? OS?平台?语言? – skaffman 2010-11-15 21:32:23

+0

我在SharePoint中使用计时器作业。这是Win 2003 64位和.Net框架。 – Omar 2010-11-16 15:54:41

最好的套件是Windows Sysinternals由马克Russinovich(现在由微软购买)。 得到它here。使用Process Explorer

有没有想过哪个程序有 打开特定的文件或目录?现在你可以找到 。 Process Explorer 向您显示有关哪些 句柄和DLL进程已打开 或加载的信息。

Process Explorer显示屏包含两个子窗口的 。顶部窗口 总是显示当前 活动的进程,包括姓名及其所属账户 的列表,而在底部 窗口中显示的 信息取决于 的Process Explorer所处的模式:如果是在 处理模式中,您将看到在顶部 窗口中所选进程已打开的句柄 ;如果Process Explorer 处于DLL模式,您将看到进程 已加载的DLL和 内存映射文件。 Process Explorer也有 一个强大的搜索功能,将 快速显示哪些进程有 打开特定句柄或加载DLL 。

过程 的独特功能浏览器使其可用于跟踪 下DLL版本问题或处理 泄漏,并提供洞察 方式Windows和应用程序的工作。

我不确定您正在使用哪种技术,但您可以尝试远程调试应用程序,例如使用Visual Studio。但为了能够做到这一点,您需要正确的调试信息文件(.pdb)。

如果这是您自己的应用程序,您试图监视,插入某种额外的日志记录将是最简单的解决方案。

您拥有的另一个选择是在您认为应用程序正在运行的时刻进行内存转储。内存转储基本上是整个内存的快照。 YOu然后可以使用像WinDbg这样的工具来检查转储的内容。

也许你可以给我们多一点信息?

+0

我实际上是在Sharepoint中创建一个计时器作业。它由一个名为“Windows Sharepoint Services Timer”的Windows服务执行。作业的Web前端表示作业已成功执行。但是,我没有得到任何日志条目。日志也由SharePoint处理。这是在WIN 2003 64位。使用.Net框架 – Omar 2010-11-16 15:53:54