如何检测受密码保护的Office文件女士?我在Linux上使用C / C ++。
如果文件为Office 2007格式(例如.docx),则其内部存储为:
1)xml文档的zip文件(如果没有密码保护)
2)旧的复合文件格式(如果受密码保护)。
因此,您可能可以执行以下操作:
1)检查文件的前几个字节
2)如果是zip文件(不受密码保护),它将以0x50 0x4b 0x03 0x04开头。
3)如果不是zip文件,则可能是受密码保护的。它将以不同的二进制签名开头(例如,在这种情况下,Word 2007文档以0xd0 0xcf 0x11 0xe0开头)
基本上,如果它是一个新的.docx或.xlsx,并且它不是以0x50 0x4b 0x03 0x04的zip签名开头,则可能是受密码保护的。
对于其他版本的MS Office,则有点棘手...
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句