Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: C + Komentorivi Näkymättömäksi

Sivun loppuun

tesmu [10.09.2006 00:57:18]

#

Elikkäs kysymys kuuluu yksinkertaisuudessaan... Miten saan komentorivin käynnistymään näkymättömänä? kun C kielinen ohjelma käynnistetään...

Meitsi [10.09.2006 01:02:43]

#

Jos käytät idenä devc++:saa, onnistuu se Project Options->projektin tyypiksi: Win32 GUI

tesmu [10.09.2006 01:17:33]

#

En halua win32 GUI:ta eikö tämä onnistu muulla tavalla?

kayttaja-4976 [10.09.2006 16:20:50]

#

Tee Win32 Application ja siellä sitten kun teet ikkunaa, et teekään siitä näkyvää. Siinä prosessissa on paljon kikkailumahdollisuuksia.

squid [10.09.2006 17:15:03]

#

Kyllä kai jotenkin on mahdollista tehdä vain jonkinlainen "prosessi", jonka näkee vain taskmanilla

kayttaja-4976 [10.09.2006 17:39:27]

#

Mun tietääkseni prosessit C:llä tehään just noin :/. En oo varma mut luulis näin.

Tai sit se Win32 GUI, mutta sitä epätykätään parhaillaan joten jätetäänpä se siihen.

ezuli [10.09.2006 17:47:57]

#

Aloita ohjelmointi tyhjästä lähdekooditiedostosta, älä mistään projektimallista.

rndprogy [10.09.2006 17:58:35]

#

Anna kääntäjälle parametri -mwindows.

Metabolix [11.09.2006 13:42:43]

#

Parametri -mwindows on jokseenkin sama asia kuin se Win32 GUI -vaihtoehdon valitseminen. Win32 GUI -ohjelmassa konsoli on oletusarvoisesti piilossa. Ikkuna ei suinkaan ole välttämätön millekään ohjelmalle. Konsolin saa tuhottua myös WinAPIn FreeConsole-funktiolla (windows.h).

tesmu [12.09.2006 20:34:00]

#

No juu annoin tuon -mwindows parametrin käännättäessä sitten kun yritän käynnistää ohjelmaa niin se ei lähde edes käyntiin... tehtäviin ei tule ohjelman nimeä jne jne

Heikki [12.09.2006 21:57:32]

#

Oletko varma ettei ohjelma vaan käynnisty ja sammu heti perään?

tesmu [12.09.2006 23:45:16]

#

#include <stdio.h>

int main(void) {
char *test[10];
gets(test);
}

ei pitäisi sammua

Heikki [13.09.2006 07:05:46]

#

Jaa-a, jos ohjelmalla ei ole konsolia mitä lukea niin en kyllä osaa sanoa mitä tuo gets() tekee.

Koita pistää ohjelmasi loppaamaan ikuiseen silmukkaan ja katso sitten josko se löytyisi prosesseista.

tgunner [13.09.2006 13:33:49]

#

Minä kirjoitin C:llä tällaisen ohjelman:

#include <stdio.h>

int main(void) {
    int i;
    while (1) {
        for (i = 0; i < 10000; i = i + 1);
    }
    return 0;
}

Ja käänsin sen komennolla:

 gcc loop.c -o loop.exe -mwindows

Sitten ajoin ohjelman ja painoin CTRL+ALT+DEL ja valitsin taskmanagerista prosessit ja siellähän se, loop.exe.

leonarven [22.09.2006 20:54:23]

#

Sehän onnistuu myös FreeConsolella...
Esim:

#include <windows.h>
int main()
{
	FreeConsole();
	while (1)
	{
	}
	return 0;
}

Edit: Hups. En lukenu Metabolix:n viestiä.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta