Batch und C++, großes Problem
-
Hi,
ich habe ein großes Problem. Ich war in der Buchhandlung und habe mir einen 700-Seiten wälzer über C++ gekauft. Nun mein Problem: Das ganze Buch hilft mir bei meinem Problem nicht weiter.
Ich möchte ein Programm haben, das unsichtbar ist und eine BAT mit dem Namen startup.bat in demselben Verzeichnis öffnet. Nur soll diese BAT nicht sichtbar sein...
Hoffe ihr könnt mir helfen...
Danke schon mal
STEPHAN
-
Windows unterstützt keine unsichtbaren Dateien.
-
Denke es geht an der Stelle darum das Konsolenfenster zu unterdrücken...
-
Hi,
nein, ich meine keine unsichtbaren Dateien, ich meinte, dass man die Form nicht sieht, die das C++-Programm hat...
-
Form
-
arbeitest wohl mit c++ Builder oder VS?
od meinst das konsolenfenster?Wieso soll das eigentlich unsichtbar sein?(hoffe doch keine bösen gedanken)
-
Form1.Visible = false; ?
-
mach doch eine win32 anwendung und für die konsolenbefehle über system() aus, wenn du eine konsolenanwendung erstellst wird glaub ich immer das konsolenfenster angezeigt,zumindest ganz kurz wenn du es über winapi gleich ausblendest ...
-
Hi,
nein, keine bösen Gedanken
Ich möchte eine BATCH-Datei ausführen. Aber wenn ich das einfach so mache, dann ploppt ganz kurz so ein schwarzes Fenster auf.
Also habe ich mir gedacht, mit C++ geht es bestimmt, dass ich ganz unsichtbar diese BATCH aufrufen kann.
Ich habe nur Visual Basic gelern. Daher Form... Ich wollte ein ganz unsichtbares Programm (wobei TaskManager vollkommen egal ist, nur nicht in der Taskleiste oder auf dem Bildschirm sehen). Dieses Programm soll die Datei startup.bat aufrufen, und zwar so, dass dieses schwarze Fenster nicht aufgeht.
Also wirklich keine bösen Gedanken...
Danke schon malSTEPHAN
-
ab nach winapi
-
Ist das Aufrufen einer Fremdanwendung aus C++ heraus eine Api-Funktion? Geht das nicht mit
ShellExecute(handle, "open", "startup.bat", NULL, NULL, SW_SHOWMINIMIZED);
oder was muss ich als ersten und letzten Parameter angeben? Ich habe das zufällig gefunden... Liebe Grüße STEPHAN
-
Ja, ShellExecute ist eine API-Funktion...
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum 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.
-
Hi,
hat jemand eine Ahnung, warum
#include <iostream> #include <conio.h> #include <shellapi.h> HINSTANCE ShellExecute( HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFile, LPCTSTR lpParameters, LPCTSTR lpDirectory, INT nShowCmd ); int main (int argc, char *argv[]) { ShellExecute(handle, "open", "startup.bat", NULL, NULL, SW_SHOWMINIMIZED); getch(); return 0; }
nicht geht?
Fehler:
firewall.cpp(8) : error C2065: 'handle' : undeclared identifier
firewall.cpp(8) : error C2065: 'SW_SHOWMINIMIZED' : undeclared identifier
firewall.cpp(8) : error C3861: 'ShellExecute': identifier not found, even with argument-dependent lookupDie Anwendung soll ohne dass man es sieht laufen und die Batch-Datei aufrufen, auch ohne dass man sie sieht...
Danke schon mal
STEPHAN
-
Warum deklarierst du ShellExecute nochmal? Ausserdem solltest du windows.h einbinden, da ShellExecute eine WINApi-Funktion ist.
Also erstmal Win32-Projekt erstellen.Ach ja: Normalerweise gilt: 1.) Grundlagen der Programmiersprache
2.) Sich mit Apis beschäftigen./edit: Mir fällt gerade die erste Fehlermeldung auf
. Also schnapp dir erstmal nen Buch/Tutorial und bring dir wenigstens die Grundzüge C++ bei...
-
Eigentlich reicht
#include <windows.h>
Lasst das "shellapi.h" weg...