gpt4 book ai didi

c# - 在 Windows 中处理系统文件夹事件

转载 作者:太空狗 更新时间:2023-10-29 19:47:24 25 4
gpt4 key购买 nike

我正在编写一些 C# 代码,我需要检测在应用程序运行时是否打开了我的 Windows 文件系统上的特定文件夹。有什么办法吗?也许是 WinAPI?

最佳答案

我认为您应该检查三个 API:

FindFirstChangeNotification() http://msdn.microsoft.com/en-us/library/aa364417%28VS.85%29.aspx这为您提供了一个句柄,您可以等待并使用它来查找特定文件、目录或目录树中文件的更改。它不会告诉您何时浏览目录,但会告诉您何时保存文件、重命名等等。

SetWindowsHookEx() http://msdn.microsoft.com/en-us/library/ms644990%28v=VS.85%29.aspx您可以将其设置为在发生任意数量的事件时为您提供回调 - 事实上,我非常肯定您可以在打开目录时获得此回调,但这可能会非常困难,因为您将拦截消息到资源管理器的窗口。因此,您将在调试期间重新启动。

Windows 外壳 http://msdn.microsoft.com/en-us/library/bb776778%28v=VS.85%29.aspx如果这还不够痛苦,您可以尝试编写一个 shell 程序。

如果你正在尝试编写一个 rootkit,我想你不希望我为你破坏细节。如果您不想编写 Rootkit,我建议您仔细查找。有开源的 Rootkit,它们基本上都必须以这种方式监控文件访问以隐藏用户/操作系统。

关于c# - 在 Windows 中处理系统文件夹事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7479583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com