12

由于程序发生变化,我需要更新 excel 宏中的代码。设计它的人两年前离开了公司。在尝试恢复它时,我发现宏项目受密码保护。我一直在寻找解决方法大约两个小时,我最好的选择是在这个板上进行了较早的讨论: 有没有办法破解 Excel VBA 项目的密码?

每个引用示例的人都使用这种格式:

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 长而不是短...所以这是第二个问题。

我意识到我基本上是在要求帮助我“破解”一个文件。如果不允许这样的问题,我会理解的。在那种情况下,我知道我的新秋季项目。

4

0 回答 0