Schrift
[thread]5710[/thread]

Wertübergabe zwischen 2 Perl Programmen (Seite 2)

Leser: 2


<< |< 1 2 3 4 >| >> 40 Einträge, 4 Seiten
pq
 2003-09-11 14:04
#50412 #50412
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
Quote
könntest Du mir das an dem oberen Beispiel evtl. verdeutlichen oder sagen was ich wo machen muss??

Ich versteh (noch) nicht ganz wie ich das 2 Perl-Skript aufrufe und dort Rückgabewerte erzeuge und im aufrufenden Programm wieder abfange *verwirr* :D

das verstehe ich auch nicht. willst du nun das zweite programm aufrufen
oder läuft es schon? vielleicht solltest du dir erst mal darüber klar werden.
aufrufen kannst du es mit system(), wie ich gezeigt habe. dort kannst
du einen parameter übergeben, wie ich es auch gezeigt habe.
wenn du auslesen willst, was das tk-programm schreibt, benutzt du ein
pipe-open, und nein, das erklär ich jetzt hier nicht, das steht in perlopentut(?),
perldoc -f open und so beschrieben.
wenn du das programm nr. 2 schon am laufen hast, musst du dir perlipc
durchlesen.
also sag erst mal, was du nun überhaupt willst.\n\n

<!--EDIT|pq|1063274666-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2003-09-11 14:13
#50413 #50413
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Wenn ich Robby richtig verstehe, startet er Programm1 (mit Tk-Oberfläche), dieses startet zu beginn Programm2 (das nach Mails schaut und immer wenn was neues ankommt eine Meldung - in welcher Form auch immer - an das Programm1 macht.

Nach dem Start laufen also beide Programme parallel.

Ich würde mir überlegen, ob ich nicht einfach von Programm 2 in eine Datei schreibe (anhängend), die ich aus Programm 1 bis zum Ende lese und dann alle 5 Minuten (oder wie oft auch immer) weiterlese wieder bis zum Ende und die ggf. eingelesenen Daten verarbeite.

Edit: Zum Weiterlesen nach dem Dateiende siehe mein Perlsnippet:

Code: (dl )
1
2
3
4
5
6
open (LOG, ....) or die $!;
for (;;) {
   print <LOG>;
   sleep 1;
   seek (LOG, 0, 1);
}
\n\n

<!--EDIT|Crian|1063275432-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Robby
 2003-09-11 14:20
#50414 #50414
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
[quote=Crian,11.09.2003, 12:13][/quote]
Quote
Wenn ich Robby richtig verstehe, startet er Programm1 (mit Tk-Oberfläche), dieses startet zu beginn Programm2 (das nach Mails schaut und immer wenn was neues ankommt eine Meldung - in welcher Form auch immer - an das Programm1 macht.

Nach dem Start laufen also beide Programme parallel.


richtig erkannt, genau so soll es funktionieren (Crian kennt die Probleme die ich immer mit Perl habe und wie ich es ausdrücke :D )

Das mit der Datei ist allerdings nur eine Notlösung wenn ich das andere nicht hinbekomme....ich möchte nämlich nicht alle 5 Minuten nach mails checken sondern ich möchte sofort angezeigt bekommen wenn eine mail da ist und von wem...

Edit:
Bevor ich das mit einer Datei mache kann ich auch alle 5 Minuten die Inbox checken ;)

Oder gibt es eine Möglichkeit den Loop (mail-checken) und die TK-Oberfläche in ein Programm zu bringen (das TK-Programm sollte halt weiterhin bedienbar bleiben, nicht blockieren während dem Loop, das hatte ich nämlich schonmal)\n\n

<!--EDIT|Robby|1063275796-->
Kaum macht man es richtig - schon funktioniert es!
pq
 2003-09-11 14:24
#50415 #50415
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=Robby,11.09.2003, 12:20]Das mit der Datei ist allerdings nur eine Notlösung wenn ich das andere nicht hinbekomme....ich möchte nämlich nicht alle 5 Minuten nach mails checken sondern ich möchte sofort angezeigt bekommen wenn eine mail da ist und von wem...[/quote]
hmm, willst du vielleicht eher Net::POP3 benutzen?
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2003-09-11 14:26
#50416 #50416
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Naja, Du kannst auch alle 5 Sekunden die Datei weiter auslesen, da fast immer nicht mehr drin steht als vorher, kostet das auch kaum Zeit. Die 5 Minuten waren nur aus der Luft gegriffen.

Du solltest nur nicht fortwährend lesen, zur Not jede Sekunde, aber zwischendurch sollte man halt andere Prozesse dranlassen (mit sleep).
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Robby
 2003-09-11 14:34
#50417 #50417
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
[quote=pq,11.09.2003, 12:24]hmm, willst du vielleicht eher Net::POP3 benutzen?[/quote]
Nein, ich bekomme von meinem Outlook hier im Geschäft ein Event (NewMail) auf das ich reagieren möchte. Im Standard-Outlook kommt da nur eine Box (Neue Mail ist da) ich möchte aber eine Meldung von wem die Mail kommt und Welchen Betreff sie hat....
DIESES PROGRAMM HAB ICH SCHON!

Es ist nur die Frage, wie ich dieses loopende Programm dazu bringe, bei einem Event (Neue Mail) die erforderlichen Daten an mein TK-Programm zu übergeben.

Ich hatte diesen Ich-warte-auf-mail-Loop erst in dem TK-Programm aber dadurch blockier ich mir die ganze TK-Anwendung (fork tut ja mit Tk auch nicht). Deshalb hab ich gedacht, ich mach den loop in einem Extra-Programm und übergebe beim Eintreffen einer neuen mail die Daten an mein Tk-Programm....

Und da häng ich gerade...das oben waren nur 2 kleine Beispielprogramme (ein Tk, und eins das loopt) zum besseren Verständnis....hat aber eher zur Verwirrung beigetragen...SORRY :)\n\n

<!--EDIT|Robby|1063276507-->
Kaum macht man es richtig - schon funktioniert es!
Crian
 2003-09-11 15:57
#50418 #50418
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Und was spricht gegen die Dateimethode? Dein Loop-Programm schreibt einfach Absender und Betreff in die Datei, die Tk-Anwendung testet alle 5 Sekunden (oder wie oft auch immer) ob hinten noch etwas dazugekommen ist und zeigt diese Information dann ggf. an.


(Das soll doch bestimmt in dem Frame angezeigt werden, der an der rechten dwes Fensters andockt und immer im Vordergrund bleibt...
Vielleicht wäre es schick, die Informationen senkrecht anzeigen zu können... aber das ist ein ganz anderes Problem. Zur Not muss man halt scrollen, wenn einen der Absender interessiert.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Robby
 2003-09-11 16:07
#50419 #50419
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
[quote=Crian,11.09.2003, 13:57][/quote]
Quote
Und was spricht gegen die Dateimethode? Dein Loop-Programm schreibt einfach Absender und Betreff in die Datei, die Tk-Anwendung testet alle 5 Sekunden (oder wie oft auch immer) ob hinten noch etwas dazugekommen ist und zeigt diese Information dann ggf. an.

Ich brauch den Umweg über die Datei nicht....dann kann ich auch die Inbox alle 5 Sekunden auslesen....wäre nur nett wenn ich das NewMail-Event hätte benutzen können....
Vielleicht schaff ich das ja auch nochmal mit eurer Hilfe :D :D


Quote
(Das soll doch bestimmt in dem Frame angezeigt werden, der an der rechten des Fensters andockt und immer im Vordergrund bleibt...

An den was ??? ;)
Da scheint jemand meine Projekte sehr genau zu verfolgen...es könnte ja sein, dass man so was mal gebrauchen kann, nicht wahr? ;)

Klar, genau da soll es angezeigt werden....genau wie die CPU-Nutzung, Speicher-Nutzung, Netzwerk-Traffic und der Logoff-Workstation-Button (alles zu finden in einem anderen Thread) :D

Soll ich Dir mal bei Gelegenheit einen Screenshot schicken von der jetzigen Anwendung? Kann ihn leider hier nicht posten weil ich keinen Webspace habe und ich hier keine Bilder anhängen kann (Verbesserungsvorschlag! :D )


Quote
Vielleicht wäre es schick, die Informationen senkrecht anzeigen zu können... aber das ist ein ganz anderes Problem. Zur Not muss man halt scrollen, wenn einen der Absender interessiert.

Was meinst Du mit Senkrecht ??
Kaum macht man es richtig - schon funktioniert es!
Crian
 2003-09-11 16:29
#50420 #50420
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, 13:57][/quote]
Quote
Und was spricht gegen die Dateimethode? Dein Loop-Programm schreibt einfach Absender und Betreff in die Datei, die Tk-Anwendung testet alle 5 Sekunden (oder wie oft auch immer) ob hinten noch etwas dazugekommen ist und zeigt diese Information dann ggf. an.

Ich brauch den Umweg über die Datei nicht....dann kann ich auch die Inbox alle 5 Sekunden auslesen....wäre nur nett wenn ich das NewMail-Event hätte benutzen können....
Vielleicht schaff ich das ja auch nochmal mit eurer Hilfe :D :D
[/quote]
Liegt die Inbox denn im Klartext vor, dass Du sie einfach auslesen kannst? Hmmm naja egal, da Du im Loop Programm auslesen kannst, kannst Du sie auslesen *g

[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, [quote]
(Das soll doch bestimmt in dem Frame angezeigt werden, der an der rechten des Fensters andockt und immer im Vordergrund bleibt...
[/quote]
An den was ??? ;)
[/quote]
... an den rechten Bildschirmrand des Fensters ...


[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, Da scheint jemand meine Projekte sehr genau zu verfolgen...es könnte ja sein, dass man so was mal gebrauchen kann, nicht wahr? ;)
[/quote]
ups ... klar, könnte sein ;-)

[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, Klar, genau da soll es angezeigt werden....genau wie die CPU-Nutzung, Speicher-Nutzung, Netzwerk-Traffic und der Logoff-Workstation-Button (alles zu finden in einem anderen Thread) :D

Soll ich Dir mal bei Gelegenheit einen Screenshot schicken von der jetzigen Anwendung? Kann ihn leider hier nicht posten weil ich keinen Webspace habe und ich hier keine Bilder anhängen kann (Verbesserungsvorschlag! :D )
[/quote]
gern

[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, [quote]
Vielleicht wäre es schick, die Informationen senkrecht anzeigen zu können... aber das ist ein ganz anderes Problem. Zur Not muss man halt scrollen, wenn einen der Absender interessiert.
[/quote]
Was meinst Du mit Senkrecht ??[/quote]
Senkrecht ist das Gegenteil von waagerecht... ;-)
Ich dachte nur, dass Du in Deinem Fenster senkrecht mehr Platz hast als waagerecht ^^
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Robby
 2003-09-11 16:34
#50421 #50421
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
[quote=Crian,11.09.2003, 14:29][/quote]
Hab versucht Dein Quote im Quote im Quote mal ein wenig zu entscherfen *g*


Quote
Liegt die Inbox denn im Klartext vor, dass Du sie einfach auslesen kannst? Hmmm naja egal, da Du im Loop Programm auslesen kannst, kannst Du sie auslesen *g

Eben...die kann ich schön auslesen...da bin ich auch ganz stolz drauf... :D


Code: (dl )
1
2
3
[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, Da scheint jemand meine Projekte sehr genau zu verfolgen...es könnte ja sein, dass man so was mal gebrauchen kann, nicht wahr?;)
[/quote]
ups ... klar, könnte sein;-)

*lol*


Quote
[quote=Robby,11.09.2003, 14:07][quote=Crian,11.09.2003, Was meinst Du mit Senkrecht ??[/quote]
Senkrecht ist das Gegenteil von waagerecht... ;-)

*Frechheit* :D


Quote
Ich dachte nur, dass Du in Deinem Fenster senkrecht mehr Platz hast als waagerecht ^^

Wie meinst Du das ???
Nicht Rechts an den Rand klatschen sondern oben oder unten anbringen????
Also senkrecht ist für mich Rechts am Rand ;)


P.S.: Screenshot kommt an die mail-Addi die ichvon Dir kenne :)
Kaum macht man es richtig - schon funktioniert es!
<< |< 1 2 3 4 >| >> 40 Einträge, 4 Seiten



View all threads created 2003-09-11 10:04.