我见过很多关于加密/解密文件的文章,通常一个按钮用于选择加密文件,另一个按钮用于解密文件。
我见过一些像truecrypt这样的应用程序,也可能是其他一些使用透明文件进行文件加密的应用程序。这意味着当单击加密文件进行访问时,它将自动解密并播放/打开该文件。然后当文件关闭时,它将自动再次加密。
有人说,检测文件打开的唯一方法是通过文件系统过滤。
但在c#compact framework中还有其他方法吗?
答案 0 :(得分:1)
您可以为所有加密文件提供由解密程序处理的特定文件扩展名,然后当用户打开文件时,您的程序将对其进行解密,然后在正确的应用程序中打开它。
答案 1 :(得分:0)
我想我理解你的问题。您无法控制显示文件的程序,您只想控制幕后文件的加密和解密,而程序甚至不知道它(如.docx文件,将在没有Word知道的情况下加密和解密) 。我认为你应该研究一下WMI。我没有专门用它来检查与被检索或保存的文件有关的系统事件,但是我已经用它来挂钩系统事件并在非常有效的时间启动代码。这是MSDN参考:
我会调查__Instance
事件。就像IO的文件保存事件的__InstanceModificationEvent
类一样:
__InstanceModificationEvent Reference
希望这能让你走上正轨!
答案 2 :(得分:0)
我在MS Foums中回答了这个问题。您必须编写file system filter,并且该过滤器只能用C语言编写。