Cita de: HJ ~ en 11 Abril 2009, 13:03 PMCita de: xkiz en 11 Abril 2009, 03:02 AMGracias, es que no sabía el nombre de la API, pero en un juego, como es en pantalla completa y se ejecuta con Direct3D no lo permite, se sigue quedando atrás, en todo lo demás bien pero el caso es que se quede delante de todo, incluyendo el juego, no habría alguna manera de añadir una DLL que se ejecutara junto al Direct3D para que así no se hiciera un lío en el buffer?
con SetWindowPos podes poner una ventana ensima de otras ejemplo: Always OnTop
Gracias
Yo vi eso en el GTA Vice City CamHack, que estaba hecho en VB6 y mostraba informacion en pantalla y a su vez imprimia un velocimetro todo sobre el D3D. El tema es que tenes que saber donde residen las funciones de escritura en pantalla del programa o juego y luego llamarlas con CallWindowProc (no es tan asi, pero bueno). La otra es obtener el handle del D3D y usar las DLLs de la version que esta ejecutando el juego, sea 8,9,10.
Y bueno sino queda la siguiente: con BitBlt imprimir cada mas o menos 50ms una imagen (como hace el cyber control de lucio perri, al avisarte que te queda poco tiempo) y obtener las teclas presionadas con GetKeyState o un Subclass a la ventana del juego o un Hook global y ver si la ventana activa es la del juego.
saludos