Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

hallo,

ich habe ein serverprog geschrieben, welches - wenn sich ein clientprog damit verbindet - ein thread aufmacht und ein weiteres prog aufruft. nun möchte ich die ausgaben dieses vom thread aufgerufenen progs wieder an das clientprog zurückgeben - nur wie??? es müßte doch irgenwie mit in-outputstreams oder objectstreams zu tun haben.... hat jmd. viel. soger ein bsp.?

besten Dank im Vorraus!

Geschrieben

du liest den outputstream des programms mittels eines inputstreams.

dieser inputstream wird an den outputstream für das netzwerk übergeben. und fertig (soviel zur theorie)

Geschrieben

Hmm, das war schon klar - am besten ich poste hier mal ein bischen mehr:

der Serverthread:

public void run()

{

String msg = "Server: Verbindung " + name;

System.out.println(msg + " hergestellt");

Process p;

// Aufrufen des Programmes bei richtigem "befehl"...

try {

ObjectOutputStream oos =

new ObjectOutputStream (socket.getOutputStream());

ObjectInputStream ois =

new ObjectInputStream (socket.getInputStream());

String methodenName = (String)ois.readObject();

String returnWert = "Methode nicht gefunden";

if(methodenName.equals("Readsoft"))

{

String prog = "C:/Readsoft.bat"; // Name und Ort des Programms

p = Runtime.getRuntime().exec( prog );

BufferedReader in = new BufferedReader(

new InputStreamReader(p.getInputStream()));

String text = "";

returnWert = "Nicht Erfolgreich beendet";

while ((text = in.readLine()) != null) //Moeglichkeitsabfrage mit Zuweisung

{

/**

* hier soll die übergabe an Client stattfinden!!!

*/

}

}

oos.writeObject(returnWert); //Returnwert ausgeben...

ois.close();

oos.close();

}

catch(Exception e)

{

System.out.println(e);

}

this.destroy();

}

Der Clientthread (fehlt noch einiges):

public Client()

{

try

{

Socket server = new Socket ( "", 7);

System.out.println ("RPC-Client kontaktiert Server " +

server.getInetAddress());

ObjectOutputStream os = new ObjectOutputStream (

server.getOutputStream());

ObjectInputStream is = new ObjectInputStream (

server.getInputStream());

System.out.println("Client Port: ");

System.out.println(server.getPort());

// Name der aufzurufenden Servermethode senden:

os.writeObject("Readsoft");

os.flush();

// Returnwert der aufgerufenen Servermethode empfangen

String returnWert = (String)is.readObject();

// Ergebnis anzeigen:

System.out.println("Server antwortet: "+returnWert);

while(!returnWert.equals("Erfolgreich"))

{

try

{

System.out.println(returnWert);

}

catch(Exception a)

{

System.out.println("Nicht Erfolgreich");

System.exit(1);

}

}

}

catch (Exception e)

{

System.out.println ( "Keine Verbindung...\n Fehler: " + e );

}

}

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...