Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
tompi
Anmeldungsdatum: 14.09.2006 Beiträge: 5
|
Verfasst am: 14.09.2006, 17:45 Titel: Überwachungsprogramm als Systray Icon! |
|
|
Hi
Ich habe ein problem ich bin dabei ein Programm zu schreiben
welches einen der dateneingänge überwacht. Es soll nur z.B. einen
Ton geben wenn eine Spannung reinkommt.
Das is auch alles kein Problem, allerdings will ich dieses Programm
später unter WinXP laufen lassen und es soll am besten als System Tray
Icon angezeigt werden. Wie kann ich das realisieren. Bzw. ist das überhaupt möglich??
Danke im vorraus
TomPi |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 14.09.2006, 18:01 Titel: |
|
|
QBasic ist dos, damit kommst du an die windowsroutinen wie den tray nur extrem schlecht bis garnicht dran. musst entweder auf freebasic umsteigen (wobei es da eventuell probleme mit deinen überwachungsfunktionen gibt) oder du musst halt ohne auskommen. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
tompi
Anmeldungsdatum: 14.09.2006 Beiträge: 5
|
Verfasst am: 14.09.2006, 21:42 Titel: |
|
|
Danke für die Antwort sowas ähnliches hab ich schon befürchtet. Dann werd ich erstmal ohne Versuchen.
(oder gibt es vielleicht eine andere möglichkeit das Programm, möglichst
unauffällig im hintergrund laufen zu lassen)??
Aber um nochma auf FreeBasic zu sprechen zu kommen
was ist den FreeBasic genau bzw. was is der unterschied zu QBasic.
Zuletzt bearbeitet von tompi am 14.09.2006, 22:06, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
jb

Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
|
Nach oben |
|
 |
tompi
Anmeldungsdatum: 14.09.2006 Beiträge: 5
|
Verfasst am: 15.09.2006, 17:01 Titel: PROBLEM beim durchzählen |
|
|
Hi
DAnke für die Seite von FreeBasic. Werd ich mir mal alles durchlesen.
Allerdings hab ich bei meinem Programm ein weiteres Problem.
Aktuell ist es so das wenn eine Spannung in den comport kommt das programm dies anzeigt und einen Ton ausgibt.
Allerdings soll das Programm zusätzlich noch die Uhrzeit an der die Spannung gekommen ist auf dem bildschirm anzeigen. Das klappt auch soweit,
ich hab den Befehl "Locate" benutzt und "PRINT TIME$" alles auch kein Problem, allerdings soll wenn nochmal eine Spannung kommt auch diese angezeigt werden allerdings an einer anderen stell so das die alte Zeit
stehen bleibt.
Ich habe versucht die Koordinaten beim LOCATE Befehl durch Variablen
zu ersetzen, und diese am ende der schleife weiterzählen zu lassen, allerdings funktioniert das nicht.
Kann mir da jemand helfen wie ich realisiere das die zeiten untereinander
aufgelistet werden.
Danke für kommende Antworten |
|
Nach oben |
|
 |
Elvis

Anmeldungsdatum: 01.06.2006 Beiträge: 818 Wohnort: Deutschland, BW
|
Verfasst am: 15.09.2006, 17:32 Titel: Re: PROBLEM beim durchzählen |
|
|
tompi hat Folgendes geschrieben: | Ich habe versucht die Koordinaten beim LOCATE Befehl durch Variablen
zu ersetzen, und diese am ende der schleife weiterzählen zu lassen, allerdings funktioniert das nicht.
|
Eigentlich stimmt der Ansatz mit den Variablen völlig...
Deshalb hier nochmal ein Code:
Code: |
CLS
LOCATE 1,1
PRINT "Zeiten, an denen der COM-Port Signale empfangen hat:"
Zeile = 3
DO
IF ComPort$ = "Signal" THEN 'Weiß jetzt nich, wie man den COM-Port abfragt
Zeile = Zeile + 1
LOCATE Zeile,1
PRINT TIME$
END IF
LOOP UNTIL INKEY$ = CHR$(27) '27 = Escape
|
Grüße, Elvis _________________ Geforce 7300GT (256MB GDDR3, Gainward) -- 2x 512MB (DDR2 800, MDT) -- AMD Athlon64 X2 EE 3800+ -- Asrock ALiveNF5-eSATA2+ |
|
Nach oben |
|
 |
tompi
Anmeldungsdatum: 14.09.2006 Beiträge: 5
|
Verfasst am: 15.09.2006, 20:56 Titel: |
|
|
Danke für den Code hat mir echt weitergeholfen, nun hab ich noch ne letzte
Frage:
Ich hab folgenden Quellcode
Code: | CLS
OUT (1020) , 1 'um DTR einzuschalten
DO
Comport = INP(1022) AND 16 'Status von CTS als comport definieren
IF Comport = 16 THEN
LOCATE 2,5
PRINT "ON "
ELSE
PRINT "OFF
LOOP UNTIL INKEY$ = CHR$(27) |
Wenn ich das Programm nun starten will kommt die Fehlermeldung
"LOOP ohne DO"
Was ist daran falsch warum findet er das "DO" am anfang nicht!
(und falls die Frage aufkommt ja da hab ich wirklich ein DO) |
|
Nach oben |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 15.09.2006, 21:34 Titel: |
|
|
Du hast 2 Sachen vergessen.
So ist es richtig:
Code: |
CLS
OUT (1020) , 1 'um DTR einzuschalten
DO
Comport = INP(1022) AND 16 'Status von CTS als comport definieren
IF Comport = 16 THEN
LOCATE 2,5
PRINT "ON "
ELSE
PRINT "OFF " 'und hier fehlte ein "
END IF 'das hattest du vergessen
LOOP UNTIL INKEY$ = CHR$(27)
|
|
|
Nach oben |
|
 |
|