[Uso-API] Utilizando MessageBoxA de C en Python - JaAViEr

Iniciado por JaAViEr, Junio 04, 2011, 04:37:47 AM

Tema anterior - Siguiente tema

0 Miembros y 11 Visitantes están viendo este tema.

Junio 04, 2011, 04:37:47 AM Ultima modificación: Marzo 23, 2015, 12:00:37 PM por Expermicid
Bueno, esto es curioso, es mezcla de C + Python:
Código: python

from ctypes import c_int, WINFUNCTYPE, windll
from ctypes.wintypes import HWND, LPCSTR, UINT
def cont():
    var=MessageBox()
    return var
prototype = WINFUNCTYPE(c_int, HWND, LPCSTR, LPCSTR, UINT)
paramflags = (1, "hwnd", 0), (0, "text", "Hola :"), (0, "caption", "Pregunta :"), (0, "flags", 1)
MessageBox = prototype(("MessageBoxA", windll.user32), paramflags)
print cont()

Al utilizar ese código, nos saltará un alert.
Para saber que boton fue presionado, debes presionarlo y devolverá un número.
Ese número es el que identifica al boton, por lo que si deseas saber
que boton fue presionado, basta con :
Código: python

from ctypes import c_int, WINFUNCTYPE, windll
from ctypes.wintypes import HWND, LPCSTR, UINT
def cont():
    var=MessageBox()
    return var
prototype = WINFUNCTYPE(c_int, HWND, LPCSTR, LPCSTR, UINT)
paramflags = (1, "hwnd", 0), (0, "text", "Desea Continuar ?"), (0, "caption", "Pregunta :"), (0, "flags", 1)
MessageBox = prototype(("MessageBoxA", windll.user32), paramflags)
if cont()==1:
    print "Bien, continuas"
else:
    print "Bueno, adios!"

Que como ven nos salta un alert diciendo:
Desea continuar ?
Aceptar             Cancelar.
Aceptar = 1
Cancelar = 2
En este caso basta con usar uno solo y el otro lo dejo para else
Si quieren más variedad de opciones, deben modificar el (0, "flags", 1)
Y ver cual es su número identificador de los botones.
Espero les haya gustado esto :D

Saludos ;)
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

haha esto esta muy bueno, seguro alguna vez lo usare, gracias :)

You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login


A mi ya se me vienen ideas a la mente jajaja.
Cuando tire unas líneas lo subo a underc0de
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login