eso :D
MessageBoxW (Unicode) and MessageBoxA (ANSI)
http://msdn.microsoft.com/en-us/library/ms645505(v=vs.85).aspx
No solo en esas api, en todas que tengan una W al final significan que son Unicode, y las que tengan una A son Ansi :P
Y que es UNICODE y que es ANSI?
Gracias :B
http://www.google.com.ar/search?sourceid=chrome&ie=UTF-8&q=Y+que+es+UNICODE+y+que+es+ANSI%3F (http://www.google.com.ar/search?sourceid=chrome&ie=UTF-8&q=Y+que+es+UNICODE+y+que+es+ANSI%3F)
http://es.wikipedia.org/wiki/Unicode
http://es.wikipedia.org/wiki/Ansi
CitarSon estandares.
Unicode funciona sólo bajo la familia NT y soporta mas de 256 juegos de carateres.. hasta 65.536 (letras chinas, arabes, coreanas, etc) es como un ASCII pero avanzado...
ANSI es el primero que salio, es el ASCII y funciona en todos los SO
Todo aclarado :D
cuando editas binariamente un byte, en ollydbg lo veras claramente el menu donde refiere el ascii y el Unicode
en uno y otro es bien diferente, porque uno puede tomar el "hola" y en el otro se veria " h o l a "
esos son pequeños grandes detalles, el A es de ASCIIy el W de Wide ingles, (unicode)
ahora probando la forma de llamar para el A
tu harias el famoso
push lugar
push otro
call api
pero en los otros usarias los
push dword ptr byte [lugar]
push otro
call api
suele ser similar, pero bajo estandares diferentes.
Gracias por la aclaración osea si quiero buscar referencias de texto en algún mensageboxw tendría que buscar por ejemplo "error" como e r r o r?
claramente al medio es hexadecimalmente 20?
Saludos
No, el espacio entre carácteres lo trata como 00.
Ejemplo:
ASCII
65 72 72 6F 72 00 00 error..
UNICODE
65 00 72 00 72 00 6F e.r.r.o
00 72 00 00 .r..
Si, eso iba a comentar, muchas gracias Saludos