能力值:
( LV2,RANK:10 )
|
-
-
26 楼
21楼的兄弟?
你的程序写入的位置不大对啊~
我看到帖子晚,用VB写了个符合楼主意愿的程序,楼主还要不要呢?
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
写一个啊,想要的,最好有源程序研究研究。
|
能力值:
( LV2,RANK:10 )
|
-
-
28 楼
写入的位置不对吗?他是要求和dat文件放一起的哦。
|
能力值:
( LV2,RANK:10 )
|
-
-
29 楼
ihvte,你做的这个patch为什么第二次运行提示“文件已修改或者文件已损坏”?
重新安装该软件才可以再次使用。
修改一次后在哪个地方做了记号吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
30 楼
ihvte,不对了,你实现的方法是替换里面的TEST,关键这个地方不一定是TEST的,可能是任意字符哦。
|
能力值:
( LV2,RANK:10 )
|
-
-
31 楼
根据楼主提供的信息以及相关文件,程序会在name.ini中获取内容(是全部内容!切记不要在里面加入不相关内容!否则会一起写入server.dat中),直接在C:\windows\system32\server.dat中将name.ini中的全部内容依次覆盖写入178H后的连续字节。
另外,name.ini中的内容多长都可以拉。
一定要有C:\windows\system32这个位置哦,否则会显示出错。即使没有name.ini和server.dat,运行程序后也会自动添加这两个空内容的文件。
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
想到个问题,B@TEST是那个程序使用的计算机名吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
很重要,一定要回答我,我需要修改一下程序,之前的程序是完全固定长度的。
|
能力值:
( LV2,RANK:10 )
|
-
-
34 楼
程序很好学的,建议学习下啦
|
能力值:
( LV2,RANK:10 )
|
-
-
35 楼
呵呵.昨天睡得太晚.我刚才起床!
上面兄弟伙提的问题.比如说第二次运行提示出错了.或者文件以修改,是因为我在程序中判断读取是否出错.因故要用原来的Server.dat来.(也就是每次把那两个文件放到那个软件的目录中)本来我原想把他改一下.改成.自动备分软件原来目录中的那个Server.dat .然后把存入补丁文件中的那个Server.dat放到目录中去.然后在改名
在改名时.(判断计算机名,如果是4位的英语字母就改.如果不是或大过4位,或者是汉字(不能大过2汉字)之类的话.就弹出一个改名的对话框)
呵呵 因为时间的关系就没有写哈. 哦.对了.不知那位兄弟伙.会那个注册机中的那个音乐呀.(我不会.等把这个学会了.然后我把他全部完善一下.再把源代码全部发上来.)
|
能力值:
( LV2,RANK:10 )
|
-
-
36 楼
样本里的TEST是计算机名的位置,是变化的,每台机上都不一定相同,但位置是绝对的从178H开始的4位。
另外之所以用ini文件,是因为我自己对vbs是很熟悉的,读取写取ini这种文本格式很容易实现,这样灵活一点。
例如,使用ini文件后,我可以用vbs直接取计算机名4位,同时按自己定义的方式把计算机名也改成4位。
我想把容易的东西交给vbs做,文件内容的写入就直接靠exe了,分开做就相当容易了,exe只需要读取ini里的东西写入到.dat。
|
能力值:
( LV2,RANK:10 )
|
-
-
37 楼
另外你覆盖写入的是176H位置,不是178H。
前面的B@可能只是个标记而已,不会发生改变。
你没用替换的方式写入,是对的,因为那个位置随时会变的。~
我想请教,你在VB6里用什么方法做到覆盖16进制地址的。给我点思路,也许我也能尝试做出来哦。10年前我学过汇编,呵呵
|
能力值:
( LV2,RANK:10 )
|
-
-
38 楼
因为不光是这个软件,我想暴力破解的东西要做补丁的话,不都可以用这种方法吗,出补丁而不是把整个软件破解好的exe发出去,节省网络资源哦。
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
学习写简单的程序,例如注册机,补丁之类的东东,学哪种语言好吗?请大家指教下,这里的热心朋友很多哇,以后我就常来学习了。
|
能力值:
( LV2,RANK:10 )
|
-
-
40 楼
还请几位热心朋友继续关注一下。~
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
大家还能关注一下吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
42 楼
权限不够,没办法上传文件。我把你要的patch传到 http://lzjxk.ys168.com/ 中的 杂类 文件夹里去了,你去下吧。
这个实现起来非常简单,只是读取name.ini中的前4个字节然后复制到server.dat文件中而以,没有任何判断的成分。
|
能力值:
( LV2,RANK:10 )
|
-
-
43 楼
最近比较忙,一直没有上,思路很简单,读取信息,判断是否有计算机名的标志位,然后从标志位后面开始修改名字。
只是我看文件后面有一块空白区域,不知道是不是预留存储计算机名的,因为VB中的文件操作中,每条目的内容是定长的。如果是定长的,可以直接覆盖相应位置,剩下的位置用空格替代。如果是不定长的,则要插入相应位置,使后面的内容向后移动。
我用的方法是用二进制操作,直接将你那个ini文件的文件名以二进制的形式依次写入从178H开始的位置,缺点是如果计算机名太长,则可能会抹掉后面的数据。
我的到的资料不足,所以没法写功能比较完美的程序,你应该反复做实验,了解那个软件是如何往里写记录的,只有了解了,才能完整编出来。
|
能力值:
( LV2,RANK:10 )
|
-
-
44 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
至于源码,我的源码非常简单,没有什么好藏着掖着的,希望能给你点启发吧。
|
|
|