阅读:5088回复:11
Minifilter框架下透明加解密 处理xlsx文件发生的问题
初次涉及透明加解密问题 还请大牛赐教
在接手前辈写的透明加解密程序时候对程序做了测试 TXT,doc,docx,xls都能顺利完成加解密,在大文件下也都能够成功 但是就是在加密环境下 调用Excel 2007保存xlsx文件的时候弹出 “文档保存成功,但是由于共享冲突,Excel不能重新打开。请关闭文档,然后再打开” 按照提示做了,结果就是无法用Excel再次打开 这个问题是哪部分代码出现纰漏了呢 xls文件保存的没有问题,那在操作xlsx时候是否需要注意什么呢? 还请大牛不胜赐教~~ |
|
沙发#
发布于:2011-03-12 21:26
对excel加密时,在文件关闭时不要对该文件作啥操作,否则它会感智知,就会出这事
|
|
|
板凳#
发布于:2011-03-12 21:31
谢谢大牛的回答,针对这个问题我修改一下代码
万分感谢~~ O(∩_∩)O~ |
|
地板#
发布于:2011-03-13 12:05
感谢znsoft给予的指导
根据大牛的意见,我在Excel保存时候我将函数执行的流程打印出来 在得到解答后的时间内,我用WinDbg跟踪Excel的关闭流程 操作流程:打开透明加解密,打开一个Excel,直接执行保存到非系统盘(没有执行关闭),得到如下输出 Start PostCreate Start Pre SetInfo Start Pre SetInfo Start PreRead Start Pre Write Write Encryption Start Pre Write Write Encryption Start Pre SetInfo Start Pre SetInfo Start Pre Write Write Encryption Start Pre Write Write Encryption Start PostCreate Start PreClose Start PostCreate Start Pre SetInfo Start PostCreate Start PreClose Start Pre SetInfo is XLSX File //到此保存工作结束,弹出共享冲突的提示框 根据分析,这里面有3次涉及到加密操作 想请教下大牛,这里面哪些函数执行是涉及到Excel他的感知呢 有哪些函数是需要特殊关照的呢 |
|
地下室#
发布于:2011-03-16 14:49
|
|
5楼#
发布于:2011-04-08 10:38
请教一下楼主,系统盘为NTFS的情况,我对word进行写完保存后老是提示“内存不足无保存”,这是什么原因啊?对txt excel ppt都没问题,另外在系统盘为FAT32的情况下,一打开office就蓝屏??望高手赐教,QQ:262772639
|
|
6楼#
发布于:2011-05-04 16:34
clcnsy你好,针对office我的大文件老是出问题,打不开或者粘贴复制打不开等,想问下你是怎样处理的啊?急
|
|
7楼#
发布于:2011-05-05 09:08
引用第4楼guijc1于2011-03-16 14:49发表的 : 从来不认为在关闭文件的时候才写文件尾是好方案。 |
|
8楼#
发布于:2011-05-05 09:12
引用第5楼lsfwhut于2011-04-08 10:38发表的 : 建议用FileSpy等追踪看看是哪个IRP出错 引用第5楼lsfwhut于2011-04-08 10:38发表的 : 用WinDbg应该很容易确定crash的代码。 |
|
9楼#
发布于:2012-12-20 23:04
为什么我对xlsx文件打开的时候总需要修复呢
|
|
10楼#
发布于:2012-12-26 08:43
excel关闭的时候会在文件末尾在写入一次信息,可能是标题,主题,备注这些,
会有PreWrite过滤,PreClose不过滤的现象, 那就在PreClose中保存标示信息,在PreWrite中替换数据再写入一次 |
|
11楼#
发布于:2013-09-15 17:25
能否贴出前辈们的代码 不甚感激
|
|