SoloCodigo

Programación General => C/C++ => Visual C++ => Mensaje iniciado por: tealdiht en Lunes 4 de Abril de 2011, 16:26

Título: Acciones fuera del programa!!!!
Publicado por: tealdiht en Lunes 4 de Abril de 2011, 16:26
Hola, estoy haciendo un porgrama manager de F1 para combinarlo con el juego GP4, y lo que necesito hacer son dos cosas:

1- Quiero dar la orden de descompactar un archivo desde mi programa. Estoy usando la instruccion "system( )" ,  pero cuando comienza a descompactar me aparece por debajo de la pantalla la barra de windows xp (como si se perdiera el FULLSCREEN) y no siempre mi programa puede retomar el control, que puedo usar en lugar de system( ) ??

2- Como puedo tomar un determinado archivo (como siempre desde mi programa) y  copiarlo en otra carpeta ????
Título: Re: Acciones fuera del programa!!!!
Publicado por: rfog en Jueves 7 de Abril de 2011, 13:13
Para abrir otro programa en background puedes usar CreateProcess() y controlarlo como quieras: http://msdn.microsoft.com/en-us/library ... 51(v=vs.85 (http://msdn.microsoft.com/en-us/library/aa363851(v=vs.85" onclick="window.open(this.href);return false;)).aspx

Para copiar un fichero, tienes CopyFIle(): http://msdn.microsoft.com/en-us/library ... 51(v=vs.85 (http://msdn.microsoft.com/en-us/library/aa363851(v=vs.85" onclick="window.open(this.href);return false;)).aspx
Título: Re: Acciones fuera del programa!!!!
Publicado por: tealdiht en Jueves 7 de Abril de 2011, 20:06
Cita de: "rfog"
Para abrir otro programa en background puedes usar CreateProcess() y controlarlo como quieras:

Para copiar un fichero, tienes CopyFIle():

Estoy teniendo contratiempos con CreateProcess(), el problema es que cuando llamo al programa "WadUpdater.exe"  (es un compactador para el juego GP4), me queda por debajo de la pantalla de mi programa y no lo puedo ver,  sabes como solucionar esto, para que el programa quede sobre el mio ???

Para colmo no puedo entrar a msdn.microsoft.com, me da error, tanto en mi casa como en el trabajo, si podes claro, me mandarias las especificaciones !!!!

chau gracias !!!!
Título: Re: Acciones fuera del programa!!!!
Publicado por: rfog en Jueves 7 de Abril de 2011, 21:15
Para subir una ventana en el z-order, tienes que llamar a BringWindowToTop() padándole el handle (que habrás recibido mediante CreateProcess(), pero si no es así, con FindWindow() y el nombre del ejecutable, obtendrás dicho handle): http://msdn.microsoft.com/en-us/library ... 73(v=vs.85 (http://msdn.microsoft.com/en-us/library/ms632673(v=vs.85" onclick="window.open(this.href);return false;)).aspx

Para acceder a los enlaces que te pongo, copia y pega el texto incluyendo los paréntesis y el .aspx. Son cosas de cómo Microsoft llama a los enlaces y los parsers de los foros no entienden (y ya sé que puedo escribirlo en html y funcionaría, pero digamos que es más fácil para mi pegar el texto, aparte de que no ando muy sobrado de tiempo)...