【问题标题】:How to create a link to a file stored in internet / cloud but appears as a 'local file' in Windows Explorer?如何创建指向存储在 Internet/云中但在 Windows 资源管理器中显示为“本地文件”的文件的链接?
【发布时间】:2018-06-19 17:28:22
【问题描述】:

类似于 OneDrive 的“按需文件” 以及 DropBox 的“智能同步” 功能,我很好奇如何创建一个看似在本地的文件磁盘正常,但实际上链接/存储在互联网或云中。

我认为这与 .lnk 或 .url 文件不同,因为即使它们存储在云端,它们也会保留以下内容:

  • 文件类型(.pdf、.xlsx 等)
  • 磁盘上的位置(例如文件夹路径)
  • 大小(原始文件大小,但 磁盘上的大小为 0
  • 文件图标

是否有其他类型的文件或任何元数据告诉 Explorer 在访问特定文件时应从 Internet 检索它?

【问题讨论】:

  • 你确定磁盘上的文件大小实际上是0?我以为他们总是只是在计算机上创建一个同步副本,并确保它和云版本彼此保持最新。
  • 资源管理器中的视图是通过 shell 命名空间扩展完成的,“假”文件大小可以在 Windows 上使用sparse files 完成,并且可以使用微过滤器驱动程序来拦截对需要的文件的调用从云端下载。
  • 嗨,亚历克斯 K.!你说的似乎很有趣。您是否有更多信息或有用的文章可以分享,尤其是关于微过滤器驱动程序?

标签: c# local-storage cloud shortcut


【解决方案1】:

我不知道其他人是怎么做的,但是如果我要创建这样的东西,我会让我的客户端程序创建具有唯一扩展名的虚拟 0 大小文件,然后当用户加倍时点击它,窗口将尝试用我的程序打开文件,我读取文件名并将文件下载到某个临时文件夹,以便用户查看。

您还可以监控临时文件夹,以便如果用户保存任何更改,您可以将这些更改上传到您的云位置。

【讨论】:

  • 啊,我明白了,是的,这似乎是实现它的一种方法。我想问一下,一个文件是否有可能具有其文件类型扩展名以及您的程序独有的另一个扩展名?
  • Windows 一次只允许一个扩展与一个程序相关联。你可以有一个像 foo.pre.main 这样的预扩展名的命名方案,但我不知道你想用这个购买什么
猜你喜欢
  • 2012-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多