注册 登录
编程论坛 VB6论坛

VB新手在线求助!

luyigoog 发布于 2021-05-19 22:15, 2151 次点击
'VA: 4336A4
Private Declare Function ShellExecute Lib "shell32" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


Private Sub Command1_Click() '4338C0
loc_004338FD:   Call AddRef 'Ignore this(Me, 0, 0, 0)
loc_0043391A:   var_8004 = Form1.Text1 'Ignore this
loc_0043393E:   If Form1.Text1.Text < 0 Then
loc_004339A1:     var_801C = ShellExecute(0, "open", "tencent://message/?Menu=yes&uin=QQ号&Service=112&SigT=ff8847c4116e035fd4b467f691cd9e42c0d413cec47eefb75d5e970421a2376ab400fffb0ea6cb8a&SigU=8a718a0cd8eba14b389fceb5788e72797b8a7eae107b9c43dd56bc7cc21090bccf67158b657963841c529232def3d416761799a1050acaaa29033f62f7fb46b5580fef571e7d82041508e926d65900ae77fae70b9cc4a341b7677c65b215d0327211235a5702bb6564157a3dfc11abe4" & CheckObj(Form1.Text1, global_00433708, 160), global_0043371C, global_0043371C, 1)
loc_00433A0E:   End If
End Sub

Private Sub Command2_Click() '433A30
  Dim global_004342E0 As Global
loc_00433A6D:   Call AddRef 'Ignore this(Me, 0, 0, 0)
loc_00433A7C:   If var_4342E0 = 0 Then
loc_00433A88:     var_8004 = vbaNew2("{FCFB3D23-A0FA-1068-A73808002B3371B5}", global_004342E0)
loc_00433A9B:     var_2C = global_004342E0
  loc_00433AB0:   If Global.Unload Me < 0 Then
loc_00433ABB:       var_8008 = CheckObj(global_004342E0, global_00433730, 16)
End Sub



点击运行  出来个提示对话框  


编译错误,函数或接口标记为限制的,或函数使用了Visual basic 中不支持的自动类型。

改自动的怎么改,谢谢大侠了!
4 回复
#2
cwa99582021-05-20 16:15
loc_004338FD:   Call AddRef 'Ignore this(Me, 0, 0, 0)

Addref这个过程在哪里呢?
还有
Dim global_004342E0 As Global
Global这个数据类型还没有定义。
#3
风吹过b2021-05-20 22:10
直接拿反编译VB6 的代码直接去运行,服了你。懂这个还是新手吗?

你翻一下我以前的一个反编译 VB6 代码分析,对着汇编去看,就会发现 反编译 丢了一些命令,导致反编译出来的代码根本无法运行。


https://bbs.bccn.net/thread-455498-1-1.html
#4
luyigoog2021-05-21 09:44
嗯,是反编译的
#5
you1578277152021-08-05 13:10
以前我也用过,貌似只能看个大概,这样复制粘贴是用不了的!要想能用除非你有源程序.源代码再自己修改.
1