Autor
|
Tema: [Source] AuTomsn 2.0 Ayuda con dependencias (Leído 2,096 veces)
|
[Zero]
Wiki
Desconectado
Mensajes: 1.082
CALL DWORD PTR DS:[0]
|
Verán, estoy haciendo la nueva version de mi programa (automsn 2.5) y tengo un problema. En my pc va bien, pero cuando se lo paso a otro pc este le da un error:
error '430' en tiempo de ejecucion: Esta clase no admite Automatización o la interfaz esperada
Utilizo el control systray, pero tengo el ocx junto al ejecutable y al ejecutar el exe lo copio a system y lo registro, por lo que dudo que el error se deba a esto. Leí por ahi que ese error se debía a que instalando el MDAC y registrando las librerias del ADO se podia solucionar, pero no fue asi. En el programa uso la API del msn, y este error creo que tambien se producía en la versión anterior, por lo que no se dónde está el problema. He buscado las dependencias que usa con el OllyDbg, y he comprobado que en el pc que no arranca el exe, existen las librerías que utilza, pero por ejemplo la librería "kernel32.dll" tiene un tamaño diferente, pero esta no puede ser substituída. No sé que hacer, y he buscado por todas partes, por eso recurro a vosotros. Salu2 y gracias
|
|
« Última modificación: 31 Diciembre 2007, 18:58 pm por º€duhAcKº »
|
En línea
|
“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza. Nietzsche
|
|
|
[Zero]
Wiki
Desconectado
Mensajes: 1.082
CALL DWORD PTR DS:[0]
|
Se me olvidó decir que utilizo XP, y que en el pc del otro es winXP tambien, espero que mem puedan ayudar. Salu2
|
|
« Última modificación: 27 Diciembre 2007, 22:10 pm por º€duhAcKº »
|
En línea
|
“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza. Nietzsche
|
|
|
nhaalclkiemr
Desconectado
Mensajes: 1.678
Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92
|
Prueva a ejecutarlo en modo depuracion, vamos con el VB sin crear el .ex e final...y asi puedes ver en k linea te falla Saludos
|
|
|
En línea
|
StasFodidoCrypter 1.0 - 100% (old) | StasFodidoCrypter 2.0 - 85% (deserted) | Fire AV/FW-Killer - 97% (deserted) | R-WlanXDecrypter 1.0- 100% |
|
|
|
[Zero]
Wiki
Desconectado
Mensajes: 1.082
CALL DWORD PTR DS:[0]
|
No puedo hacer eso, es lo peor, porque a mi me va perfecto, los errores son cuando lo ejecute en otros pc's. Postearé el codigo de la 2.0 para ver si así alguien me puede decir a que se debe el error. Option Explicit Dim mensage As String Dim i As Integer
'Función sleep Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'Funcion verificar exe Public Function VerificarExe(ejecutable As String) As Boolean Dim strSQL As String On Error Resume Next strSQL = "Select Name from Win32_Process Where Name = '" & ejecutable & "'" VerificarExe = GetObject("winmgmts:").ExecQuery(strSQL).Count End Function
Private Sub form_load() Text2.Text = VerificarExe("msnmsgr.exe")
If Text2.Text = "False" Or Text2.Text = "Falso" Then MsgBox "Inicia el messenger antes de usar el programa", vbInformation, "Error: Messenger no iniciado" End End If
Dim contacto As IMessengerContact For Each contacto In messengerapi.Messenger.MyContacts If contacto.Status <> MISTATUS_OFFLINE Then contactos.AddItem contacto.SigninName End If Next
automsn1.Height = 6390
If txtcontacto.Text = "" Then 'si no hay contacto seleccionado cmdcontar.Enabled = False cmdbomb.Enabled = False cmdauto.Enabled = False cmddesc.Enabled = False End If End Sub
Private Sub cmdauto_click() automsn1.Height = 6390 'auto si Label3.Visible = True Text3.Visible = True Text4.Visible = True cmdenvtxt.Visible = True cmdparar.Visible = False Text5.Visible = False Label5.Visible = False Label6.Visible = False 'desconectar no Label4.Visible = False cmddesconectar.Visible = False 'bombardear no cmdbombardear.Visible = False txtbomba.Visible = False txtbombas.Visible = False Label7.Visible = False Label8.Visible = False 'contar no Option2.Visible = False Option1.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False cmdcuenta.Visible = False cmdpararcuenta.Visible = False End Sub
Private Sub cmddesc_click() automsn1.Height = 6390 'auto no Label3.Visible = False Text3.Visible = False Text4.Visible = False cmdenvtxt.Visible = False cmdparar.Visible = False Text5.Visible = False Label5.Visible = False Label6.Visible = False 'desconectar si Label4.Visible = True cmddesconectar.Visible = True 'bombardear no cmdbombardear.Visible = False txtbomba.Visible = False txtbombas.Visible = False Label7.Visible = False Label8.Visible = False 'contar no Option2.Visible = False Option1.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False cmdcuenta.Visible = False cmdpararcuenta.Visible = False End Sub
Private Sub cmdbomb_click() automsn1.Height = 6390 'bombardear si cmdbombardear.Visible = True txtbomba.Visible = True txtbombas.Visible = True Label7.Visible = True Label8.Visible = True 'auto no Label3.Visible = False Text3.Visible = False Text4.Visible = False cmdenvtxt.Visible = False cmdparar.Visible = False Text5.Visible = False Label5.Visible = False Label6.Visible = False 'desconectar no Label4.Visible = False cmddesconectar.Visible = False 'contar no Option2.Visible = False Option1.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False cmdcuenta.Visible = False cmdpararcuenta.Visible = False End Sub
Private Sub cmdcontar_click() automsn1.Height = 6390 'contar si Option2.Visible = True Option1.Visible = True Text6.Visible = True Text7.Visible = True Text8.Visible = True cmdcuenta.Visible = True cmdpararcuenta.Visible = False 'auto no Label3.Visible = False Text3.Visible = False Text4.Visible = False cmdenvtxt.Visible = False cmdparar.Visible = False Text5.Visible = False Label5.Visible = False Label6.Visible = False 'bombardear no cmdbombardear.Visible = False txtbomba.Visible = False txtbombas.Visible = False Label7.Visible = False Label8.Visible = False 'desconectar no Label4.Visible = False cmddesconectar.Visible = False End Sub
'*******AUTOENVÍO*********
Private Sub cmdenvtxt_click() cmdenvtxt.Visible = False Text4.Visible = False Text3.Visible = False Label3.Visible = False cmdparar.Visible = True Text5.Visible = True Label5.Visible = True Label6.Visible = True Timer1.Enabled = True Timer1.Interval = 1000
Text5.Text = Val(Text3.Text) * 60 messengerapi.Messenger.InstantMessage txtcontacto.Text mensage = Text4.Text Clipboard.Clear Clipboard.SetText mensage SendKeys "^v" SendKeys "{ENTER}" Sleep "10" End Sub Private Sub cmdparar_click() cmdenvtxt.Visible = True Text5.Visible = False Label5.Visible = False Label6.Visible = False Text4.Visible = True Text3.Visible = True Label3.Visible = True cmdparar.Visible = False Timer1.Enabled = False End Sub
Private Sub timer1_timer() Text5.Text = Val(Text5.Text) - 1 If Val(Text5.Text) = 0 Then messengerapi.Messenger.InstantMessage txtcontacto.Text mensage = Text4.Text Clipboard.Clear Clipboard.SetText mensage SendKeys "^v" SendKeys "{ENTER}" Sleep "10" Text5.Text = Val(Text3.Text) * 60 End If End Sub
'***********DESCONECTAR*********** Private Sub cmddesconectar_click() Dim i As Integer Dim x As IMessengerContact x = txtcontacto.Text For i = 1 To 300 messengerapi.Messenger.InstantMessage txtcontacto.Text Clipboard.Clear Clipboard.SetText " " 'animación muchas veces SendKeys "^v" SendKeys "{ENTER}" If x.Status = MISTATUS_OFFLINE Then i = "300" End If Next i DoEvents End Sub '********BOMBARDEAR********* Private Sub cmdbombardear_click() Dim i As Integer Dim bombas As Integer bombas = txtbombas.Text Dim mensage As String mensage = txtbomba.Text For i = 1 To bombas messengerapi.Messenger.InstantMessage txtcontacto.Text Sleep "10" Clipboard.Clear Clipboard.SetText mensage SendKeys "^v" SendKeys "{ENTER}" Next i End Sub
'**********CONTAR********* Private Sub cmdcuenta_click() If Option1.Value = True Then Option2.Enabled = False ElseIf Option2.Value = True Then Option1.Enabled = False End If cmdcuenta.Visible = False cmdpararcuenta.Visible = True Timer2.Enabled = True Timer2.Interval = "1000" End Sub
Private Sub cmdpararcuenta_click() Option1.Enabled = True Option2.Enabled = True cmdcuenta.Visible = True cmdpararcuenta.Visible = False Timer2.Enabled = False End Sub
Private Sub option1_click() Text6.Text = "Te quedan" Text7.Text = "120" Text8.Text = "segundos" End Sub
Private Sub option2_click() Text6.Text = "Llevo ya" Text7.Text = "120" Text8.Text = "segundos" End Sub Private Sub timer2_timer() Dim texto1 As String Dim tiempo As String Dim texto2 As String
If Option1.Value = True Then texto1 = Text6.Text tiempo = Text7.Text texto2 = Text8.Text
messengerapi.Messenger.InstantMessage txtcontacto.Text SendKeys texto1 + " " + tiempo + " " + texto2 SendKeys "{ENTER}" Text7.Text = Val(Text7.Text) - 1 End If
If Option2.Value = True Then texto1 = Text6.Text tiempo = Text7.Text texto2 = Text8.Text messengerapi.Messenger.InstantMessage txtcontacto.Text SendKeys texto1 + " " + tiempo + " " + texto2 SendKeys "{ENTER}" Text7.Text = Val(Text7.Text) + 1 End If End Sub
'*******Demás comandos******* Private Sub cmdcerrar_click() automsn1.Height = 4020 End Sub
Private Sub contactos_click() txtcontacto.Text = contactos.Text
End Sub
Private Sub txtcontacto_change() cmdauto.Enabled = True cmdcontar.Enabled = True cmdbomb.Enabled = True cmddesc.Enabled = True
If txtcontacto.Text = "" Then cmdcontar.Enabled = False cmdbomb.Enabled = False cmdauto.Enabled = False cmddesc.Enabled = False End If End Sub
Private Sub cmdrec_click() automsn1.Height = 4020 txtcontacto.Text = "" contactos.Clear Dim contacto As IMessengerContact For Each contacto In messengerapi.Messenger.MyContacts If contacto.Status <> MISTATUS_OFFLINE Then contactos.AddItem contacto.SigninName End If Next End Sub Espero que a alguien se le ocurra que es lo que puede fallar, ya que esta es la 2.0 pero en la 2.5 que solo haciendo la interfaz, ya me producía ese error. Salu2
|
|
|
En línea
|
“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza. Nietzsche
|
|
|
LeandroA
|
hola prova de estas dos formas
primero sin esto
strSQL = "Select Name from Win32_Process Where Name = '" & ejecutable & "'" VerificarExe = GetObject("winmgmts:").ExecQuery(strSQL).Count
si es que te funciona con eso despues prova sin utilizar el api del msn
messengerapi.Messenger.InstantMessage txtcontacto.Text
Dim contacto As IMessengerContact For Each contacto In messengerapi.Messenger.MyContacts If contacto.Status <> MISTATUS_OFFLINE Then contactos.AddItem contacto.SigninName End If
seguramente una de estas dos son las que ocacionan el problema.
|
|
|
En línea
|
|
|
|
[Zero]
Wiki
Desconectado
Mensajes: 1.082
CALL DWORD PTR DS:[0]
|
La función de verificar el exe en la versión 2.5 aún no la he utilizado, pero el problema sigue ahí, solo habia echo la interfaz gráfica y lo d que se carguen los contactos en un listbox: messengerapi.Messenger.InstantMessage txtcontacto.Text
Dim contacto As IMessengerContact For Each contacto In messengerapi.Messenger.MyContacts If contacto.Status <> MISTATUS_OFFLINE Then contactos.AddItem contacto.SigninName End If Y dejar de utilizar la API es cargarse mi programa. Pero si el problema es de la API, no se puede adjuntar la o las librerías que dan problemas al exe? Porque el código está bien, no tiene fallos, y en mi pc el programa arranca y funciona perfectamente, pero en otras pc's, (que no digo en todas) hai errores, por eso digo que tiene que ser de alguna dll. Alguna solución??? Salu2
|
|
« Última modificación: 1 Enero 2008, 20:12 pm por º€duhAcKº »
|
En línea
|
“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza. Nietzsche
|
|
|
|
|