运行 在文件夹中打开文件时的 .exe 文件

Run a .exe file when a file is opened in a folder

我正在将一个文件夹安装为虚拟驱动器,我想 运行 每次用户打开该文件夹中存在的任何文件时都会有一个 .exe 文件。准确地说,该文件夹将包含其他机器上存在的虚拟文件。通过虚拟文件,我的意思是该文件将被列出,但它将是一个空文件。每当用户打开文件时,我希望 .exe 程序从另一台计算机下载该文件并将其显示给用户。

该功能(按需远程访问)可以使用 reparse points and file system filters 实现。

你可以 用hooks改写OpenFile的跳转地址,在 绕行功能检查手柄类型,通过以下方式检索它的信息 使用 GetFileInformationByHandleEx,解析数据,下载 你需要什么,打开下载的文件然后 return STATUS_SUCCESS 或任何适当的错误状态,以防万一。

备注

  • 这有点复杂,因为您还需要 auto-inject 将 function/library 注入每个进程的机制 是建筑。
  • 这不是一个安全的过程,因为大多数 AV 很可能会认为您的代码是恶意软件。