破解一个vb编写的程序,修改里面一句代码就可以,没有源代码,有安...
展开全部 去下载一个UltraEdit。
装上后打开这个EXE(建议备份一个起来,成功了再删掉),然后搜索想要改的字,比如 "File",你就搜索 46 00 69 00 6c 00 65 00 (十六进制的ascii码,并且一个字符占用两个字节——因为这是Unicode编码——字母的话,后面加一个 00,像我这样),如果是汉字的话就麻烦点,你得查到它的Unicode码。
然后再用这个编码转成16进制去搜索,修改的话直接改,改完保存就行...
如何把vb 或vba编辑器中的代码带颜色打印出来?
有的网站有代码彩色化的功能,如代码发芽网 http://fayaa.com/code/new/有的编辑软件有代码彩色化的功能,如Notepad2, UltraEdit等 加上必要的语言定义文件,非常齐全的。
在VBA环境中,也有人提供过这方面的功能,你可以参看EXCELHOME的这个贴子。
http://club.excelhome.net/thread-470541-1-1.html这几种方法都可行的。
用VB编的程序应如何打开
1.如果是可执行文件(无法编辑),请在VB按文件->生成 。
然后选择路径,再点保存(是*.exe的文件)(前提是你代码没有错误,否则会提示你,修正后重新执行此操作)2.如果连安装文件一起,请按开始直到VB的栏中,再点Microsoft Visual Basic 6.0 中文版工具->Package & Deployment 向导。
(前提如上,如果有新版本(就是说你先生成再保存VB工程,或者你在生成后你又修改了,但没有生成),它会提示你是否重新编译)3.如果边编辑边运行,直接在VB工具栏中点播放符号,或按F5。
怎么用VB编译exe
步骤: 1、 工欲善其事,必先利其器。
用到的工具有ResourceHacker、eXeScope。
可以搜索下载。
替换的背景图片,大小可以不和原来的一样,默认大小是324*214,当然你也可以自定义。
如果要更换按钮图片,则需要制作4张图片,分别是鼠标滑过、鼠标按下、普通状态、“登陆QQ”按钮状态。
其他图片类似。
2、 到QQ安装目录下查找LoginCtrl.dll文件(2007版本之后是 LoginCtrlRes.dll文件),做好备份,以便发生错误时恢复。
3、 使用ResHacker打开LoginCtrl.dll文件,在左侧资源中的“位图”中替换相应图片:替换16050为你想要的背景图片。
如果你设置图片想原来默认图片一样是上下2张分开的,则需要替换963和16050两个图片。
4、 打开“对话框”→450,这时会看到右边的预览对话框: 5、 右键点击上面的图片(QQ2006图片),选择“编辑控件”,打开“控件编辑器”,在风格中选择最下面的“WS_CLIPSIBLINGS”,这个选项的功能是隐藏控件,但是能点击到,在下面的按钮修改中还要用到。
6、 右键点击下面的图片,就是你换的那个图片,选择“编辑控件”,在控件坐标的左、上都填上“0”,确定后这样界面改成这样: 7、 修改代码窗口中背景图片对应的一行代码,将控件ID修改为0或者其他没有用到的数字(在修改过程中我没有修改,导致登陆框下方总是存在一行白条,调节下方的竖长条也不行,现在还没有搞明白),一般使用0或者-1等。
8、 为什么我的图片不能完全显示呢(如果你的图片是规则的324*214则不会出现问题,为了全面介绍,我使用的图片是432*228)?和上面最终效果比较一下,右边一部分没有出现。
测试发现,上图右下角的“取消”按钮是控制右边界的(聪明的你是不是想到网上流传的超小登陆界面是怎么制作的了?)。
在ResHacker代码窗口最上面一行中,修改对话框宽度为图片宽度288。
点击“编译脚本”,看看右边预览窗口是不是变了? 这时用鼠标或者键盘将“取消”按钮移动到右边框左侧一点: 9、 右边界搞定了,下面来确定下边界。
经测试,下边界通过下面的竖长条确定: 10、 调整竖长条上边界到上面图片的下边界,然后调整右侧的控件位置,然后确保竖长条的下边界能包含住右边的控件: 11、 回到主界面。
用鼠标调整按钮等控件到合适位置。
然后编辑控件,选择上边第5步中的“WS_CLIPSIBLINGS”项,让按钮隐藏,但是能够起作用。
对于其他的控件可以这样处理:“忘记密码”、“QQ号码”“QQ密码”等可以使用上述方式隐藏,也可以将大小设置为长为0或者宽为0来隐藏。
“自动登陆”和“隐身登陆”前面的复选框这样设置:右键编辑控件,大小设置为8*8,取消风格中的“BS_FLAT”项,这样没有黑边。
12、 这样设置后,基本上就OK了。
这样做出来的只是界面更换了,其他的没有改变,下面我们来去掉它的边框和标题栏:在预览窗口中右键选择“编辑对话”,取消风格中的“WS_CAPTION”(去标题栏)和“DS_MODALFRAME”(去边框)即可。
注:去掉标题栏后无法关闭界面,可以将下面的“取消”按钮(不是控制右边界的那个取消,下面还有一个)挪上来,放置到合适位置,如本例中的右上角位置。
13、 到这一步应该就结束了,回头看看其实也没有什么难的,困难的就是背景图片的选择制作。
在整个过程中只要细心、小心,一般是没有问题的。
当然为了方便起见可以完成一个或者一套修改后备份一次,测试一次,这样如果哪一步出错了,可以恢复到前一步的操作中来,不用从头来了。
14、 网上还流传着这样的教程,重命名位图→963为1111(或者其他没有重复的数字),替换位图→1111为你想要的背景图片,修改删除位图→16050。
然后在右侧预览窗口中删除下面的位图控件(原来的位图→16050),将上面的位图控件(位图→1111)的ID修改为1,这样在代码窗口中原来的963行出成为第一行,复制第一行,粘贴到第二行之前,这样前2行是一样的。
修改第二行的963数字为1111,点击“编译脚本”,这样珊瑚虫版的界面也可以正常显示。
在vb中已生成的exe 文件的程序如何看它的程序代码并在VB中作修改?...
'两个函数 , 先在一个模快中定义API函数 Declare Function WritePrivateProfileString Lib "KERNEL32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationname As String, ByVal LpKeyName As Any, ByVal lsString As Any, ByVal lplFilename As String) As Long'如果是读INT值可以用字符串转化,所以没有另外定义函数'Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPriviteProfileIntA" (ByVal lpApplicationname As String, ByVal LpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long Declare Function GetPrivateProfileString Lib "KERNEL32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationname As String, ByVal LpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long'定义读与写INI文件的函数'****读INI文件****'文件名 lpFileName 如果不存在会自己创建,如果只有文件名,默认在Windows\system目录下'[lpAppName]'lpKeyName=取回的设置值'lpDefault 当键值不存在时的默认值 Public Function ReadINI(ByVal lpFileName As String, ByVal lpAppName As String, ByVal LpKeyName As String) As String Dim Temp As String * 255 Dim lpDefault As String lpDefault = "" If GetPrivateProfileString(lpAppName, LpKeyName, lpDefault, Temp, Len(Temp), lpFileName) ReadINI = "" Else ReadINI = MyTrim(Temp) 'MyTrim函数见下 End If End Function'****写INI文件****'[lpAppName]'lpKeyName=lpString Public Function WriteINI(ByVal lpFileName As String, ByVal lpAppName As String, ByVal LpKeyName As String, ByVal lpString As String) As Boolean If WritePrivateProfileString(lpAppName, LpKeyName, lpString, lpFileName) = 0 Then WriteINI = False Else WriteINI = True End If End Function'包含三个函数,分别取Rtrim,Ltrim,Trim'可以去字符串中如ASC码为0,10,13,32的字符 Public Function MyRtrim(ByVal Tmpstr As String) Dim i, S As Integer i = Len(Tmpstr) If i = 0 Then MyRtrim = "" Exit Function End If S = Asc(Right(Tmpstr, 1)) While (S = 0 Or S = 13 Or S = 10 Or S = 32) And i > 0 i = i - 1 Tmpstr = Left(Tmpstr, i) If Len(Tmpstr) = 0 Then MyRtrim = "" Exit Function End If S = Asc(Right(Tmpstr, 1)) Wend MyRtrim = Tmpstr End Function Public Function MyLtrim(ByVal Tmpstr As String) Dim i, S As Integer i = Len(Tmpstr) If i = 0 Then MyLtrim = "" Exit Function End If S = Asc(Left(Tmpstr, 1)) While (S = 0 Or S = 13 Or S = 10 Or S = 32) And i > 0 i = i - 1 Tmpstr = Right(Tmpstr, i) If Len(Tmpstr) = 0 Then MyLtrim = Tmpstr Exit Function End If S = Asc(Left(Tmpstr, 1)) Wend MyLtrim = Tmpstr End Function Public Function MyTrim(ByVal Tmpstr As String) Tmpstr = MyLtrim(Tmpstr) Tmpstr = MyRtrim(Tmpstr) MyTrim = Tmpstr End Function--------------------------------- 把以上内容保存到一个模块里,再按提示调用。
在点修改后写入三个值,然后表单load事件里,又读INI文件中这三个值并显示到对应的command上。
转载请注明出处51数据库 » vb编辑摇奖软件代码
熙沫女神