C-Programm als Hintergrundprozess
-
moin leute,
ich hab mich grad mal kurz in google umgeschaut, hab aber nix brauchbares gefunden, also wollte ich mal hier fragen:
wie kann ich ein c-programm als hintergrundprozess laufen lassen? d.h. ich will es beim pc in den autostart legen und es soll dann aber nicht gesehen werden...
geht sowas in c? wenn ja: wie?
wär cool, wenn ihr mir da helfen könntet,
danke schonmal im vorausmfg
Pyro
-
^^unter windoofs?
falls ja, mach eine sogenannte 'win32' anwendung, dabei geht keine konsole auf und fenster auch nur, wenn du absichtlich welche erstellst.
ansonsten google nach 'hide console'.
-
ja, soll auf winxp laufen...
kann ich da nicht einfach im code was einbinden, dass er das verstecken soll?^^
-
so etwa:
HWND hide (void) { wchar_t str[MAX_PATH]; HWND hwnd; GetConsoleTitle ((wchar_t*)str, MAX_PATH); hwnd = FindWindow (NULL, str); if (hwnd) ShowWindow (hwnd, SW_HIDE); return hwnd; } // test void main (void) { HWND hwnd = hide(); MessageBox (0, L"click to show", L"console hidden", MB_OK); ShowWindow (hwnd, SW_SHOW); }
-
sieht schonmal ganz gut aus, vielen dank schonmal:)
aber paar fehler hauts mir noch raus... sorry, wenn das irgendwelche leichten sachen sind, aber ich progg c nur so nebenher seit ca einem jahr (in der schule gelernt)
Fehler:
in function 'hide':
[Warning] passing arg 1 of 'GetConsoleTitleA' from incompatible pointer type
[Warning] passing arg 2 of 'FindWindowA' from incompatible pointer type
in function 'main':
[Warning] return type of 'main' is not 'int'
Permission denied
ld returned 1 exit statuspaar konnt ich schon rausmachen und das mit dem main is not int bekomm ich auch noch hin^^... der rest sagt mir net all zu viel...
-
;fricky schrieb:
so etwa:
HWND hide (void) { wchar_t str[MAX_PATH]; HWND hwnd; GetConsoleTitle ((wchar_t*)str, MAX_PATH); hwnd = FindWindow (NULL, str); if (hwnd) ShowWindow (hwnd, SW_HIDE); return hwnd; } // test void main (void) { HWND hwnd = hide(); MessageBox (0, L"click to show", L"console hidden", MB_OK); ShowWindow (hwnd, SW_SHOW); }
ich ändere es mal ab...
HWND hide (void) { char str[MAX_PATH]; HWND hwnd; GetConsoleTitle ((char*)str, MAX_PATH); hwnd = FindWindow (NULL, str); if (hwnd) ShowWindow (hwnd, SW_HIDE); return hwnd; } // test int main (void) { HWND hwnd = hide(); MessageBox (0, "click to show", "console hidden", MB_OK); ShowWindow (hwnd, SW_SHOW); return 0; }
^^so müsste es auch mit mingw gehen.
-
ok, schon fast^^
jetzt gibts nur noch 2 fehler:)
1. Permission denied (hatte ich noch nie in c oO... was sagt das aus?)
2. Id (oder ld) returned 1 exit statusnoch ne idee?
-
beende mal die EXE bevor du neu kompilierst
-
ah, ok, läuft, besten dank:)
wenns noch mehr fragen gibt melde ich mich einfach bei euch^^...
-
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum ANSI C in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.