最近想做一个类似于浏览器的程序,这个程序有一个要求是程序不能随意对磁盘文件进行操作(安全方面考虑),因此我的想法就是提供一个类似于crt的库,这个库将crt里面的文件操作函数进行了重写,使得对文件的操作最终只是操作一个目录或文件。以前也有人有这个需求,他将这个叫做独立文件系统,我就按这个进行搜索,结果没找到类似的开源工程(自己动手之前先看看别人有没有做过,免得重造轮子)。最近我在csdn论坛发帖(http://topic.youkuaiyun.com/u/20091225/19/2b4add83-7166-46a1-9673-735452cf9c17.html?56464),有人回帖了filedisk,这个是一个好东西,去并不满足我的需求。
最近在网上找东西时,无意间看到了Silverlight里面的IsolatedStorage,这个东西c#里面也可以用。IsolatedStorage基本满足我的需求,不过我最先要的是c/c++版本。不过没什么关系,我有办法在c/c++里面使用.net里面的这些类。
下面贴一段IsolatedStorage的介绍(http://ajava.org/readbook/webkf/silverlightzn/17379.html):
| 14.2 独立存储IsolatedStorage 独立存储(IsolatedStorage)是Silverlight 2中提供的一个客户端安全的虚拟文件系统。由于Silverlight限制了客户端Silverlight应用程序不能访问文件系统,只能 |

为确保程序不直接操作磁盘文件,作者计划创建一个类似CRT库的解决方案,重写文件操作函数以限制到特定目录。研究中发现Silverlight的IsolatedStorage功能接近需求,但需要C/C++版本。通过C++调用C#的DLL,可以利用IsolatedStorage在C++中实现类似功能。文章提供了相关资源链接和调用C#托管DLL的方法。
最低0.47元/天 解锁文章
757





