Hola, tengo una duda que quizás muchas se la han planteado y tal vez la hayan resuelto, es la siguiente:
Yo oculto la consola en C++ con FreeConsole(); de la librería de Windows, bueno aquí dejo el código
#include <stdio.h>
#include <windows.h>
int main(){
FreeConsole();
getchar();
return 0;
}
Esto está bien, la consola se me oculta. El problema es que la consola se nota cuando se abre, osea pestanea y me gustaría saber si hay una forma que desde que des doble click se ejecuta oculta y que no de ese pestanazo, osea se ve cuando sale la consola y se oculta, conocen alguna forma?
Gracias por adelantado.
**edito escribí el ultimo parrafo por error dentro de las líneas de codigo ¬¬ **
Si compilas con GCC, pásale el parámetro -mwindows.
#pragma comment(linker, "/SUBSYSTEM:WINDOWS")
int WINAPI WinMain(_In_ HINSTANCE hInstance,_In_opt_ HINSTANCE hPrevInstance,_In_ LPSTR lpCmdLine,_In_ int nCmdShow){}
Con eso no te debería de aparecer ninguna consola, no hace falta entonces que llames a freeconsole();
Saludos.
Muchisimas gracias amigos :D!, lo probaré y dira como me fue!
Cita de: boy-ka en 28 Julio 2015, 02:16 AM
Hola!, mira lo he probado con el siguiente codigo:
#pragma comment(linker, "/SUBSYSTEM:WINDOWS")
#include <cstdlib>
#include <iostream>
using namespace std;
int main(_In_ HINSTANCE hInstance,_In_opt_ HINSTANCE hPrevInstance,_In_ LPSTR lpCmdLine,_In_ int nCmdShow)
{
system("PAUSE");
return EXIT_SUCCESS;
}
Me aparece error de que _In_ no ha sido declarado, bueno ahora te muestro el error
7 C:\Users\mi_usuario\Desktop\main.cpp `_In_' was not declared in this scope
7 C:\Users\mi_usuario\Desktop\main.cpp `_In_opt_' was not declared in this scope
7 C:\Users\mi_usuario\Desktop\main.cpp `_In_' was not declared in this scope
7 C:\Users\mi_usuario\Desktop\main.cpp `_In_' was not declared in this scope
8 C:\Users\mi_usuario\Desktop\main.cpp initializer expression list treated as compound expression
8 C:\Users\mi_usuario\Desktop\main.cpp expected `,' or `;' before '{' token
C:\Users\mi_usuario\Desktop\Makefile.win [Build Error] [main.o] Error 1
Puedes ayudarme con esto?, a y por si acaso estoy utilizando el compilador DEV C++ versión 4.9.9.2, gracias.
**edito: cambio el nombre de mi equipo por mi_usuario **
Mod: no hagas doble post, usa e botón modificar... evita usar mayúsculas, hay
muchas formas de resaltar
un texto
Si usas DevC++ seguramene estes usando el compilador gcc de mingw. Asique haz lo que dice ivancea96: En las opciones de compilación añade el texto "-mwindows".
EDIT: los errores que obtienes con _In_ etc aparecen porque no has incluído windows.h, de todas formas insisto en que uses lo que dice ivancea96 ya que tendrás un codigo más portable.
PD: no deberías usar DevC++ ya que su desarrollo se frenó por completo hace bastante tiempo. Yo usaría Code::Blocks que es muy similar y su desarrollo aun persiste.
Cita de: joecarl en 28 Julio 2015, 08:55 AM
Si usas DevC++ seguramene estes usando el compilador gcc de mingw. Asique haz lo que dice ivancea96: En las opciones de compilación añade el texto "-mwindows".
EDIT: los errores que obtienes con _In_ etc aparecen porque no has incluído windows.h, de todas formas insisto en que uses lo que dice ivancea96 ya que tendrás un codigo más portable.
PD: no deberías usar DevC++ ya que su desarrollo se frenó por completo hace bastante tiempo. Yo usaría Code::Blocks que es muy similar y su desarrollo aun persiste.
Podrías por favor darme un ejemplo de cómo hacerlo?
Pues mira, en DevC++ no sé, pero en Code::Blocks no hace falta nisiquiera usar nada de lo dicho anteriormente, simplemente vas a:
Project->Properties...->Build Targets->Type:
Y seleccionas "GUI Application" en el menu desplegable.
Y ya no hay mas consola que valga.
Cita de: joecarl en 28 Julio 2015, 12:47 PM
Pues mira, en DevC++ no sé, pero en Code::Blocks no hace falta nisiquiera usar nada de lo dicho anteriormente, simplemente vas a:
Project->Properties...->Build Targets->Type:
Y seleccionas "GUI Application" en el menu desplegable.
Y ya no hay mas consola que valga.
Gracias ahora me cambio a codeblocks, pero, ya veldría saliendo oculta la aplicación?
disculpa por las preguntas xD
Sí, al seleccionar GUI application estas configurando el compilador para que cree un ejecutable que no muestre ninguna consola, sino interfaces visuales, pero si no defines ninguna interfaz visual pues no deberia mostrarse nada.
Hola, yo usaba visual studio 2013, para compilar el código de todas formas si te da error, de todas formas probaría a añadir #include "windows.h", haber si se corrige el error, sino prueba a hacer un makefile y a usar gcc como dijeron, ya que estarás usando un compilador diferente.
Saludos.