【问题标题】:File Watcher - get the process name that created a file in Windows?File Watcher - 获取在 Windows 中创建文件的进程名称?
【发布时间】:2010-09-30 12:52:35
【问题描述】:

有没有什么好的方法可以获取在 Windows 中创建文件的进程名称?

我在 Windows 2000 Server
C:\WINNT\Temp 上有一个目录,其中包含以下文件:
70618199
21834082

它们的大小始终为 121,201 KB。

我能否以编程方式“捕获”在此位置放置文件的程序名称或服务名称?

更多信息:
我对此做了更多的研究。我重命名了文件 TIFF 并且能够打开它。
该机器通过自定义编写的 ASP.NET 应用程序用作文档搜索工具。 该机器在 E:\ 驱动器上包含大约 50,000 个 TIFF 文档。这台机器还运行 SQL Server 2000,打开全文索引。全文索引绝不会触及 TIFF - 但它不应该因为这是 SQL 对吗?但 FTS 确实需要打开索引服务。这个 TIFF 的奇怪之处似乎是 Web 服务器提供的最大的东西。 IIS 或索引服务是否使用 C:\WINNT\Temp 进行某种缓存?想法?

解决方案(也许?) 这似乎是 Microsoft 索引服务。
当我关闭它时,这些文件都不会在 WINNT\Temp 中创建。
它似乎抓取了它找到的最大文件并将其复制到 WINNT\Temp 中。 这很奇怪。当您处理 100MB+ TIFF 文件时,这可能会导致您的磁盘空间不足。很烦人。
猜猜我将关闭我的索引服务的“Web”分支。

【问题讨论】:

  • 我将尝试将此文件移出 Web 层次结构,看看它是否开始将下一个最大的文件“复制”到 C:\WINNT\Temp。

标签: .net windows io process filesystemwatcher


【解决方案1】:

总是有Process monitor 代替 FileMon,它会告诉你哪个进程正在访问有问题的文件。

【讨论】:

    【解决方案2】:

    如果你想要类似 fuser for windows 的东西,可以查看Process Explorer

    它不会让您查看文件,但您可以查看当前正在运行的进程是否正在访问该临时目录并创建类似的命名临时文件。

    【讨论】:

    【解决方案3】:

    我使用过FileMon.exe,,但仅适用于 XP。

    【讨论】:

      【解决方案4】:

      我发现从 .NET 以编程方式执行此操作的唯一方法是运行 Sysinternal's Command-line Handle App 并传入文件名并读取控制台输出,以尝试使用打开的文件句柄来捕获源应用程序。

      否则其他人提到的实用程序就可以了。

      【讨论】:

      • 酷。我不知道这个工具存在。我的问题是我不知道何时创建文件,而且我认为它不会长时间保持“打开”状态。
      【解决方案5】:

      您始终可以将该目录设置为只读,然后看看会发生什么。虽然如果它是一个文档服务器,您可能不想这样做。

      【讨论】:

        【解决方案6】:
        \回收站\S-1-5-21-1482476501-1644491937-682003330-1013\service.exe

        这是一个回收站病毒。它在所有磁盘分区中创建了一个名为“Recycler”的隐藏文件夹,我无法从 Windows 安全模式中删除它们。 Norton, AVG Kaspersky 未能检测到或删除它。

        我关闭系统还原,使用启动盘重新启动 PC 进入命令提示符并从所有驱动器中删除“Recycler”文件夹。使用命令 rmdir/s c:\recycler

        这是在 Windows XP 上唯一对我有用的东西。

        【讨论】:

          【解决方案7】:

          只需使用标准 Win32 api (NAPI)。

          见高级。 Win32 API 新闻://comp.os.ms-windows.programmer.win32 源代码(C)

          【讨论】:

          • 你能说得更具体些吗?函数名?其他要搜索的关键字?
          猜你喜欢
          • 2018-09-14
          • 2015-07-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-05-09
          • 2014-07-11
          • 1970-01-01
          相关资源
          最近更新 更多