Laden...

Windows und Kommandozeilen Programm in einem

Erstellt von salla vor 18 Jahren Letzter Beitrag vor 17 Jahren 2.445 Views
S
salla Themenstarter:in
147 Beiträge seit 2005
vor 18 Jahren
Windows und Kommandozeilen Programm in einem

Ich möchte ein Programm entwickeln, dass Windows-Anwendungen und Kommandozeilen-Programme in einem ist. Sprich wird es über die Kommandozeile (mit Parameter) aufgerufen, soll es ohne GUI auskommen. Wird das Programm ohne Parameter aufgerufen, soll das GUI starten.

Im Moment habe ich alle benötigten Klassen und das Windows GUI. Jetzt fehlt mir noch die Kommandozeile. Finde aber irgendwie keinen "Startpunkt" wie ich es angehen soll.

Danke sagt,
Salla

2.223 Beiträge seit 2005
vor 18 Jahren

Wie wäre es mit ner eigenen Start klasse die je nach aufruf gui oder charakter aufruft

S
salla Themenstarter:in
147 Beiträge seit 2005
vor 18 Jahren

Danke, so in die Richtung hab ich mir das auch schon überlegt. Mein Problem ist, dem aktuellen Projekt (Windows Programm) kann ich keine Kommandozeilen Komponente hinzufügen. Muss ich dafür ein eigenes (neues) Projekt anlegen?

2.223 Beiträge seit 2005
vor 18 Jahren

Das mit dem Projekt anlegen ist doch eigentlich nur ne Hilfe für den Entwickler

wenn eine neue klasse erstellst und alles rausschmeisst was du nicht benötigst
dann sollte das doch reichen

oder du machst drei projekte gui und charakter und funtkionen die beide benutzen und ein 4 projekt für den aufruf

gui und charakter als dll erstellen fertig
mfg

2.223 Beiträge seit 2005
vor 18 Jahren

Nee das mit gui und charakter in einem wird nicht funktionieren also Methode 2

S
salla Themenstarter:in
147 Beiträge seit 2005
vor 18 Jahren

Danke blackcoin für deine Hilfe.

Hab das jetzt doch etwas anders gelöst. Drei Projekte, Alle benötigten Klassen in einer DLL, ein Projekt für Kommando Zeile (exe) und ein Projekt für das GUI (exe). Der Benutzer muss also das die richtige exe aufrufen. Ok funktioniert an für sich prima.

Das Kommando Zeile sowie das GUI Projekt instanzieren alle benötigten Klassen aus der dll. Über get / set Methoden werden Informationen ausgetrauscht.

Ein Problem ergibt sich aber hier. In der dll ist ein Timer eingebaut. Der Timer ruft Statusprüffunktionen auf. Und die Meldungen würde ich gerne an das Programm übergeben. Sprich bei Kommando Zeile eben ausgeben, bzw. ein Statusfeldtext im Gui ansprechen. Beim instanzieren gebe ich ein Status mit, ob es sich um Kommando Zeile oder Gui handelt. Das kann ich also abfragen. Wie aber kann ich jetzt das Statustextfeld aus der DLL heraus ansprechen?

Danke sagt,
Salla

2.223 Beiträge seit 2005
vor 18 Jahren

du kanst doch selber Events erstellen und dan dieses event im gui und im character program registrieren dann erfolgt das reinschreiben halt in dem jeweiligen programm

stichwort: delegat

mfg

S
salla Themenstarter:in
147 Beiträge seit 2005
vor 18 Jahren

Danke für das Stichwort. Delegat ist mir bisher noch nicht über den Weg gelaufen. Ich werde mich mal einlesen. Vielen Dank noch mal!

S
salla Themenstarter:in
147 Beiträge seit 2005
vor 18 Jahren

Möchte mich einfach noch mal bedanken. Das Programm steht nun. Ereignisse mittels Delegate handlen funktioniert vorzüglich 🙂

Danke für die Hilfe und den super Tip.

J
24 Beiträge seit 2005
vor 17 Jahren

Huhu!

Habe die selbe Anforderung wie der Thread-Starter. Könnte mir jemand ggf. ein wenig Beispielcode verfügbar machen? Ich weiss nicht genau wie ich's sonst lösen soll.

Danke!

jimmie

2.223 Beiträge seit 2005
vor 17 Jahren

Hallo jiM3op,

schön das du gesucht hast und auf diesen Thread gekommen bist.

aber schreib doch erst mal auf was du bisher erreicht hast und bei welchen sachen du noch probleme hast

sonst schreiben wir uns die finger wund aber weil deine anforderung total anders sind
kannst du damit nichts anfangen

mfg

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo jiM3op,

siehe auch Windowsapplication: Version im Konsolenfenster anzeigen

herbivore