我希望我的应用程序清理它使用的所有临时文件,问题是并非所有临时文件都在我的控制之下,所以我只想“残酷地”解锁它们以便以编程方式删除它们。
答案 0 :(得分:4)
查看this文章。我认为即使使用interop,你也很难在C#中本地执行此操作,但编写C ++ / CLI包装程序集可能是一个很好的折衷方案。另请注意,用户需要具有SE_DEBUG权限才能生效。
答案 1 :(得分:3)
我也一直在努力解决这个问题,最终只是向Unlocker的命令行实现了。在我的情况下,它必须每天运行多次,最终每天解锁数千个文件,没有任何问题。
答案 2 :(得分:2)
当然,您的应用程序想要清理它拥有的临时文件,然后您可以完全控制解锁这些文件并将其删除!
如果您要删除所有TEMP文件,无论是否由您的应用程序拥有,您应该非常小心。原始应用程序可能应用了锁,因为它想要使用该文件!
如果你真的需要,你可以总是生成一个命令行应用程序,而不是试图复制现有工具的功能,这在C#中很难。
答案 3 :(得分:0)
在MSDN论坛上查看此thread。有足够的信息可以做你想要的,但不推荐。