0

是否可以通过我的应用程序获取任何外部应用程序打开的文件的句柄?

以 Cloud-Storage Apps 为例,我想跟踪通过 Storage-Provider App 打开的文件的更改,以便之后可以再次上传操作过的文件。

4

1 回答 1

1

这里有两个可能的答案,具体取决于您正在实施的应用程序类型。

出于一般跟踪目的,您可以尝试在 Windows.Storage.Search 中使用 StoreFolderQueryResult/StorageFileQueryResult 类的 ContentsChanged 事件。也就是说,您为要观看的内容创建文件或文件夹查询,然后注册事件处理程序。一般来说,这适用于本地文件系统上的东西。如果您尝试对后备存储在其他地方的文件/文件夹运行查询,则无法保证。

该主题过于详细,此处无法描述,但您可以参考我的免费电子书Programming Windows Store Apps with HTML, CSS, and JavaScript, Second Edition的第 11 章中的“文件和文件夹查询” ,第 607 页。在 JS 作为一种语言时,像这样的 WinRT API 讨论在使用任何语言时都很有用……而且这本电子书是免费的,所以没有什么可失去的。

如果您正在实现一个为云存储后端提供接口的应用程序,例如作为 Windows 一部分的 OneDrive 应用程序,则另一种机制将很有用。在这种情况下,您需要使用 CachedFileUpdater 合约。参见我上述书籍的附录 D,第 1288 页。

于 2014-08-02T03:02:19.087 回答