Von Programm auf Commandline eines anderen zugreifen?

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

 

CO2

ehemals "SirMO"

Betreff: Von Programm auf Commandline eines anderen zugreifen?

BeitragDo, Nov 10, 2011 20:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich habe gerade ein Problem. ich muss aus einem mit BlitzMax geschriebenen Programm auf die Commandline eines anderen zugreifen (oder viel mehr Parameter übergeben)... wie geht das?

mfG,
CO2

PS: Ich wusste nicht, in welches Forum ich das schreiben soll, sollte er hier falsch sein, bitte verschieben Wink
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

ZEVS

BeitragDo, Nov 10, 2011 20:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Verstehe ich das richtig? Du rufst ein Programm mit
Code: [AUSKLAPPEN]
myprogram param

auf und willst jetzt mit einem BMax-Programm an den Parameter?

Das geht nicht so einfach, dafür müsste das andere Programm eine Schnittstelle anbieten, mit der es dir die Parameter verrät.

ZEVS
 

CO2

ehemals "SirMO"

BeitragDo, Nov 10, 2011 20:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstmal danke für die Antwort Wink

Ich meinte das aber eigentlich so: Ich habe in BlitzMax ein Programm geschrieben. Nun gibt der User etwas ein, und das vom user eingegebe wird an die Commandline des 2. Programms geschickt oder übergeben, oder wie auch immer man sagen mag Wink

mfG,
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

ZEVS

BeitragDo, Nov 10, 2011 20:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Was hältst du von einer Named Pipe? Startest du das Programm neu oder wäre ein dauerhafter Prozess evtl. günstiger?
Alternativ kannst du über die Commandline eigentlich sehr große Datenmengen senden (meist über Annonymous Pipe).
Drittens kannst du das einfach die Speicheradresse der Eingabe als Parameter übergeben (oder, wenn die Eingabe den RAM sprengt, einen Dateinamen).

ZEVS
 

CO2

ehemals "SirMO"

BeitragDo, Nov 10, 2011 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok, danke für die Antwort!

Folgendes habe ich vor: Ich will eine Art Compiler schreiben. Erst wird der Quellcode erstellt, dann übersetzt der Compiler den Quellcode in FASM - Code und speichert die Datei zwischen. Und ab diesem Punkt das genannte Problem: Wie kann ich den Compiler die 2 Werte (Quellcodedatei, Ziel) übergeben lassen zum FASM-Compiler, bzw. wie erstellt man eine "Named Pipe" mit BlitzMax?

mfG,
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

ZEVS

BeitragDo, Nov 10, 2011 21:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Named Pipes für BB gibt es hier.
Die beiden Ziele kannst z.B. mit Doppelpunkt getrennt als Parameter übergeben (Der Doppelpunkt hat keine Konsolenfunktion und darf in Dateinamen nicht verwendet werden => geeignet).
Oder halt u.g. Variante 3.

ZEVS

BladeRunner

Moderator

BeitragDo, Nov 10, 2011 21:30
Antworten mit Zitat
Benutzer-Profile anzeigen
sollte hier createprocess nicht absolut ausreichend sein?
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Xeres

Moderator

BeitragDo, Nov 10, 2011 21:37
Antworten mit Zitat
Benutzer-Profile anzeigen
~VERSCHOBEN~


Es geht um BlitzMax - warum sollte das im Smalltalk stehen?
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

CO2

ehemals "SirMO"

BeitragDi, Nov 15, 2011 20:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstmal sorry, das ich jetzt erst zurückschreibe, musste den thread erstmal wiederfinden Wink

Zweitens danke für die Antworten, so

@ ZEVS:
Ich zitiere mal kurz einen satz: Zitat:
Diese ist jedoch nur unter Windows XP, 2000 oder Vista verfügbar.
Ich bräuchte es aber wenn möglich auch für 7... Embarassed

@ BladeRunner:
der "createprocess" von was? Stehe gerade ein wenig auf dem schlauch, sorry.

@ Xeres:
War ein wenig verwirrt, da es ja grundsätzlich um die "Kommunikation" zweier programme geht... Naja, danke Very Happy

mfG,
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

BladeRunner

Moderator

BeitragDi, Nov 15, 2011 20:58
Antworten mit Zitat
Benutzer-Profile anzeigen
createprocess ist eine Bmaxfunktion Co2.
Und da Du ja nach einem in BMax geschriebenen Compiler fragst sollte das ja die Lösung deines Problemes sein.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group