Windows 备用数据流的替代方案
Alternative to Windows Alternate Data Streams
我有以下需要在 Windows 上实现:带文件的文件。
最初我想使用带扩展名的目录。像“folderA.myappext”这样的东西,所以当用户在资源管理器中点击它时,我的应用程序被启动而不是文件夹被打开。不幸的是,我无法找到一种方法来做到这一点。然后我尝试使用备用数据流。这工作得很好,但有几个问题:
- 它仅适用于 NTFS,因此无法通过电子邮件或原样 FTP 发送;
- 只有 WinRAR 才能正确压缩它,为此您还需要在 UI 中额外点击;
- 真实文件大小(包含所有流)不在资源管理器中显示,也不参与显示 free/used space,这会很快给用户带来大问题。
不,我不能使用 zip 或任何其他方式将文件合并为一个文件 - 这是一款高性能应用程序,也需要写入流(即它一直在更改数据)。
知道如何在 Windows 上满足我的需求吗?我知道在 MacOS 上你可以使用 'package',但在 Windows 上没有类似的东西。有什么想法吗?
Something like "folderA.myappext", so when user clicks on it in Explorer, my app is launched instead of folder being opened.
您不能根据扩展名执行此操作,因为文件夹没有扩展名,但您可以使用 desktop.ini 执行此操作。 Windows 7 及更高版本支持 custom verbs on folders。
可以找到一个工作示例 here。
我有以下需要在 Windows 上实现:带文件的文件。 最初我想使用带扩展名的目录。像“folderA.myappext”这样的东西,所以当用户在资源管理器中点击它时,我的应用程序被启动而不是文件夹被打开。不幸的是,我无法找到一种方法来做到这一点。然后我尝试使用备用数据流。这工作得很好,但有几个问题:
- 它仅适用于 NTFS,因此无法通过电子邮件或原样 FTP 发送;
- 只有 WinRAR 才能正确压缩它,为此您还需要在 UI 中额外点击;
- 真实文件大小(包含所有流)不在资源管理器中显示,也不参与显示 free/used space,这会很快给用户带来大问题。
不,我不能使用 zip 或任何其他方式将文件合并为一个文件 - 这是一款高性能应用程序,也需要写入流(即它一直在更改数据)。
知道如何在 Windows 上满足我的需求吗?我知道在 MacOS 上你可以使用 'package',但在 Windows 上没有类似的东西。有什么想法吗?
Something like "folderA.myappext", so when user clicks on it in Explorer, my app is launched instead of folder being opened.
您不能根据扩展名执行此操作,因为文件夹没有扩展名,但您可以使用 desktop.ini 执行此操作。 Windows 7 及更高版本支持 custom verbs on folders。
可以找到一个工作示例 here。