由于程序发生变化,我需要更新excel宏中的代码。设计它的人两年前离开了公司。在尝试恢复它时,我发现宏项目受密码保护。 我一直在寻找一个大约两个小时的解决方法,我最好的选择是在这个板上进行较早的讨论: Is there a way to crack the password on an Excel VBA Project?
引用示例的每个人都使用以下格式:
CMG="..."
DPB="..."
GC="..."
现在这是我的问题。当我在十六进制编辑器中加载文件(它是.xla)时,我看到DPB字符串被切成两部分,而不是相等的部分。在这两部分之间,我有大量的其他代码和经典的乱码。因此,如果我想用我的其他简单密码保护的虚拟宏替换原始字符串,我不知道之前要放置的字符串的哪个部分,以及之后的部分。
这是它的样子:
VersionCompatible32="393222000"
CMG="B9BB1563196319671D671D"
DPB="3C3E906990F1ADF1AD0E53F2ADA57F5232827697A774ECD098BDyNone<bh:9f>y<bh:10><bh:00>
[然后出现了大量不相关的数据](注意'DyNone',不知道'D'是字符串的一部分,还是'DyNone'的一部分)
<bh:00>uf_GetSQL<bh:03><bh:00><bh:00><bh:02><bh:09><bh:00><bh:00><bh:00>uf_VarSQL<bh:05><bh:00><bh:00><bh:02>86B8588665A975BB5916D296"
GC="BFBD13EA15EE99EF99EF99"
[Host Extender Info]
&H00000001={3832D640-CF90-11CF-8E43-00A0C911005A};VBE;&H00000000
这两个部分大约是文件的一半,但距离彼此还有相当大的距离。
我试过在第一部分之后移动第二部分:
VersionCompatible32="393222000"
CMG="B9BB1563196319671D671D"
DPB="3C3E906990F1ADF1AD0E53F2ADA57F5232827697A774ECD098B86B8588665A975BB5916D296"
GC="BFBD13EA15EE99EF99EF99"
DyNone<bh:9f>
但后来我收到了“不可读的内容”错误,项目就不见了。此外,当您的替换字符串比原始字符串短时,上述主题提到了解决方案。在我的情况下,cmg-string长2,dpb-string长一个而不是更短...所以这是第二个问题。
我意识到我基本上要求帮助'破解'文件。如果不允许这样的问题,我会理解的。在那种情况下,我知道我的新秋季项目。