word 打开多个文档进行打印,获取每个文档的打印份数dmCopies 不正确,该怎么解决

word 打开多个文档进行打印,获取每个文档的打印份数dmCopies 不正确
用的是office2003,获取打印份数dmCopiecs有一个BUG,已经安网上说的修改过了(http://support.microsoft.com/kb/919736/zh-cn)安了sp3, 添加了注册表,也可以取到打印份数;在word里面HOOK了打印,取打印份数,单个文档打印时取dmCopiecs是对的,但是打开多个文档对文档进行打印时,某些情况取到的值就不对了。各种情况如下:

1.打开两个文档A,B
打印文档A,设置打印份数为1
打印文档B,设置打印份数为5
关闭文档A,关闭文档B
取到的打印份数分别为 :文档A dmCopiecs = 1, 文档B dmCopiecs = 5
这种情况取到的值是对的

2. 打开两个文档A,B
打印文档A,设置打印份数为5
打印文档B,设置打印份数为1
关闭文档A,关闭文档B
取到的打印份数分别为 :文档A dmCopiecs = 5, 文档B dmCopiecs = 5
这种情况取到的值是错的

3. 打开文档A,B
打印文档A,设置打印份数为3,
打印文档B,设置打印份数为2
关闭文档A打印文档B,设置打印份数为2
关闭文档A,关闭文档B
取到的打印份数分别为 :文档A dmCopiecs = 3, 文档B dmCopiecs = 2
这种情况取到的值是对的

4.
打开文档A,打印文档A,设置打印份数为5
关闭文档A
打开文档B,打印文档B,设置打印份数为1
关闭文档B
取到的打印份数分别为 :文档A dmCopiecs = 5, 文档B dmCopiecs = 1
这种情况取到的值是对的

什么原因造成这样的问题,应该怎么解决?
------解决方案--------------------
微软没有提供虚拟打印机的文件API……虚拟打印机只需要实现打印接口,其他行为是否实现,是否为这些行为提供接口则取决于驱动的作者,打印驱动的文件对话框行为是没有标准化的接口的。你看看是不是把这部分功能自己实现,让用户选择份数之后写个打印到PDF、PS或者XPS的功能,之后再调用系统的打印功能把结果打出来,这样你可以在打印之前就知道用户选择的打印份数。
------解决方案--------------------
实在不行恐怕得用ReadProcessMemory了。
推荐使用WinHex软件查看文件或内存中的原始字节内容。