阅读:2972回复:9
word 打开的文件不能刷缓存 关了word就可以 请板主指点谢谢
我在sfilter中creat中有时要刷缓存
调用的函数是 ManageFileCache 大多数情况工作正常 但在word打打开一个doc文档时 CcPurgeCacheSection(pFileObject->SectionObjectPointer, NULL, 0, FALSE);返回为FALSE 只要关了word CcPurgeCacheSection便反回TRUE 请问如何在word打开doc文档时刷新该文档的缓存 想在这里请教高手希望指点 |
|
沙发#
发布于:2007-09-01 23:06
貌似word是使用内存映射方式处理文件的,所以无法刷缓存。
|
|
板凳#
发布于:2007-09-02 08:13
不到万不得已不要刷缓存,否则麻烦事一堆一堆的
|
|
|
地板#
发布于:2007-09-02 20:42
谢谢两位高手的回答
问题是这样的 加了密的文件有两种进程 一种可以得到明文 另一种得到密文 在两种程序切换时不刷缓存的话那要如何处理 希望tooflat 指教 |
|
地下室#
发布于:2007-09-03 10:41
自己顶一下
|
|
5楼#
发布于:2007-11-28 17:07
我也遇到了同样的问题, "word是使用内存映射方式处理文件的,所以无法刷缓存"
那么怎么能在WORD打开情况下,清理其 缓存 |
|
6楼#
发布于:2007-12-03 18:18
引用第3楼hongpengtao于2007-09-02 20:42发表的 : CcSetFileSizes 设置为0就可以了。 |
|
|
7楼#
发布于:2007-12-04 09:36
谢谢clicx的回答
能否说说为什么"CcSetFileSizes 设置为0" 就可以了。 |
|
8楼#
发布于:2007-12-07 14:09
如果切换不成功就拒绝打开呗 除非实现两个缓存
|
|
9楼#
发布于:2009-09-04 12:48
一点愚见,不知道对不对。
可以把explorer也作为工作进程,这样其他应用程序就读不到明文了。 |
|
|