【flutter 日程app源码】【如何查看快递包裹溯源码】【小程序源码怎么设置密码】dokan源码

2024-12-23 07:42:51 来源:collections.sort 源码 分类:焦点

1.Windows Dokan简介

dokan源码

flutter 日程app源码

Windows Dokan简介

flutter 日程app源码

       Dokan创建之初的目的和FUSE(Filesystem in Userspace)一样,即为了实现用户自己的文件系统。开发者通过dokan开发文件系统,实现的是一个应用程序而不是复杂的内核驱动。(Windows内核驱动开发也不见得比Linux简单。)Dokan就是Windows上的FUSE。而目前Dokan已经支持Fuse,意味着Linux Fuse程序也可以实现向Windows平台的迁移。

flutter 日程app源码

        目前Dokan已经被替换成Dokany(自0.6.0版本),广泛支持位或位X和ARM架构。支持的Windows版本有

flutter 日程app源码

        - Windows Server // R2// R2 SP1

flutter 日程app源码

        - Windows /8.1/8/7 SP1

flutter 日程app源码

        简而言之,和FUSE如出一辙。

flutter 日程app源码

        Dokan库包含用户态的动态链接库(dokan.dll)和内核态的驱动程序(dokan1.sys)。( 可以类比FUSE提供用户态的动态链接库libfuse.so和内核态驱动fuse.ko。) 使用dokan库创建的文件系统视为 文件系统程序 。 

flutter 日程app源码

        文件操作比如创建文件CreateFile、读文件ReadFile和写文件WriteFile的请求将会发送给内核态子系统,然后转递给驱动程序。 文件系统程序 通过用户态提供的函数接口,在驱动程序中注册回调接口。驱动程序到信息后会调用这些回调函数,最后这些请求在用户态的文件系统程序中被处理。Dokan扮演的是应用程序和 文件系统程序 直接的代理角色。

flutter 日程app源码

        第一步实现DOKAN_OPERATIONS结构体里的函数。这些函数会被注册成回调函数。DOKAN_OPERATIONS会在主函数DokanMain中作为参数传递使用。

flutter 日程app源码

        一般操作文件的顺序是

flutter 日程app源码

        - DOKAN_OPERATIONS::ZwCreateFile

flutter 日程app源码

        - 其他操作,比如写、读等

flutter 日程app源码

        - DOKAN_OPERATIONS::CleanUp

flutter 日程app源码

        - DOKAN_OPERATIONS::CloseFile

flutter 日程app源码

        即创建、实际操作、清理和关闭。清理主要是清理请求和关闭文件句柄,而关闭是清理尚存的上下文结构。

flutter 日程app源码

        每个操作成功返回STATUS_SUCCESS,如果失败则返回不同的错误状态NTSTATUS。另外,每一个Dokan操作都要带一个结构体DOKAN_FILE_INFO。每个文件句柄会关联该结构。该结构的主要目的是保存当前操作的文件信息,比如上下文操作信息、是否为目录类型、是否读缓存、同步操作等定义操作行为的信息。具体详见附录中地址。

flutter 日程app源码

        实现了 线程安全 的文件系统操作,调用DokanMain函数即可挂载文件系统到Windows中,该函数会在卸载之前保持阻塞状态。

flutter 日程app源码

        源码包里面提供了Mirror,可以作为案例入门Dokan的开发。

flutter 日程app源码

        Dokan Fuse在使用时需要链接 dokanfuse.dll 的动态库。 另外由于Linux和Windows在处理删除和重命名上的不同会导致一些移植出现问题 (Linux允许打开的文件被删除,而Windows则不允许)。

flutter 日程app源码

       é¡¹ç›®åœ°å€ï¼š/dokan-dev/dokany

flutter 日程app源码

        结构体DOKAN_FILE_INFO描述:https://dokan-dev.github.io/dokany-doc/html/struct_d_o_k_a_n___f_i_l_e___i_n_f_o.html

flutter 日程app源码

更多资讯请点击:焦点

推荐资讯

一名日照市场监管人的战“疫”日志

中国消费者报报道记者 尹训银)“2月2日上午,重点检查了沙墩市场。日常生活必需品的快检批次由原来的12批次提高到24批次;经检查畜禽屠宰环节继续关闭,蔬菜、水果、猪肉供应充足,价格稳定。&

遵守2前提 教宗准神職人員替同性伴侶祝福!

梵蒂岡18號宣布,教宗方濟各正式批准神職人員可替同性伴侶舉行祝福儀式,儘管這項改變有兩大前提,不能在教會正規儀式舉行,也不得涉及民事結合,不過各界普遍認為這是天主教會對同性議題邁出歷史性的一步。祝福儀

泉州市中考中招、体育中考政策出台

本报讯 记者曾聪虹)今年我省实施“新中考”,中考考试办法、中招录取政策都有变化,中考总分从去年的630分增至800分,其中体育与健康总分从去年的30分增至40分。昨日,《关于2