我在一个Windows机器上运行应用程序时遇到问题。我无法在其他类似的Windows机器上复制它,并且它才刚刚开始发生。情况如下:

  • 使用Visual Studio,我可以构建自己编写的应用程序。它构建了一个可执行文件:Application.exe,我可以在其bin/Debug目录中看到该可执行文件以及我知道应用程序所依赖的所有DLL,包括Microsoft.Windows.Azure.Configuration.dll。
  • 运行该应用程序时,该应用程序停止运行,并且当我调查此问题时,可以看到Microsoft.Windows.Azure.Configuration.dll已重命名为Microsoft.WindowsAzure.Configuration.dll.5502888.DeletePending .5502888.DeletePending.5502904.DeletePending.5502919.DeletePending.5502935.DeletePending.5502950.DeletePending

  • 尽管我已经在这台机器上运行相同的应用程序大约一年了,但我从未见过这种行为。有人知道会发生什么吗?

    谢谢你的帮助。

    最佳答案

    尽管我自己还没有看到此文件,但我知道Windows使用FILE_OBJECT structure打开文件时,将支持挂起的删除操作(如right permissions中所跟踪)。

    环顾互联网,我发现其他人通过Windows Defender遇到了这个问题,其他人则对许多其他类似的AV软件也发表了评论。但是,由于它似乎是Windows API的功能,因此任何应用程序都可能导致它。

    看起来,使用Sysinternals的ProcMon进行调试可能是跟踪使文件保持打开状态的最佳方法。

    关于.net - DLL被标记为DELETEPENDING,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30686858/

    10-11 01:44