ASM y MSN

Iniciado por c4st0r, 23 Marzo 2009, 14:04 PM

0 Miembros y 1 Visitante están viendo este tema.

Arkangel_0x7C5

eso sengun he leido es error en las referencias. Vamos que hago de los parametros esta mal. En que api ocurre exactamente?

c4st0r

#11
En CoCreateInstance, he debugeado el exe del C y se coloca igual los datos que en el de ASM pero no entiendo porque no funciona igual, pero luego estoy intentando ver la estructura del IUnknown de C y como que es algo distinta sino me equivoco...

Arkangel_0x7C5

bueno, yo lei la msdn y dice que el Unowk es el interface que se debe obtener con  QueryInterface

Saludos

c4st0r

#13
No entiendo, no se si es por la manera de compilar pero asi funciona, le he puesto una string antes de las direcciones de MSn y funciona, habia visto que habia un return raro al cargarse la direccion.


format PE GUI 4.0
include 'win32ax.inc'

invoke LocalAlloc, LPTR, 1000
mov ebx, eax
invoke CoInitialize,0
invoke CoCreateInstance,CLSID_Messenger,NULL,\
                        0x4,\
                        IID_IMessenger,ebx

struct  GUID
       Data1             dd ?
       Data2             dw ?
       Data3             dw ?
       Data4             rb 8
ends

yoseba db '0000000000000000000000000000000000000000', 0
CLSID_Messenger  GUID 0xb69003b3,0xc55e,0x4b48,<0x83,0x6c,0xbc,0x59,0x46,0xfc,0x3b,0x28>
IID_IMessenger   GUID 0xd50c3186,0x0f89,0x48f8,<0xb2,0x04,0x36,0x04,0x62,0x9d,0xee,0x10>


data import
library kernel32, 'kernel32.dll',\
        ole32, 'ole32.dll'

import ole32, CoInitialize, 'CoInitialize',\
              CoCreateInstance, 'CoCreateInstance'

include 'API\KERNEL32.INC'
end data


voy a compilarlo de otra manera a ver  :-\, tanto tiempo viendo en que fallaba ya me estaba volviendo loco