Ein paar kleine Fragen zu Konsolenanwendungen

Anfängerfragen zum Programmieren mit PureBasic.
Zero_Cool
Beiträge: 84
Registriert: 04.12.2004 15:14

Ein paar kleine Fragen zu Konsolenanwendungen

Beitrag von Zero_Cool »

Hallo Zusammen

Ich habe ein paar Fragen zu Konsolenanwendungen:

- Kann ich eine Zeile welche ich mit PrintN ("") ausgebe, ein paar Code Zeilen spähter überschreiben? Ich würde gerne einen Zähler einbauen der von 0 - 100% hochzählt wenn gewisse Abläufe erledigt sind.

- Gibt es eine Möglichkeit mit einer Konsolenanwendung zu Checken ob eine Internet Seit Online ist? Kann man IP und Reaktionszeit ausgeben?

- KAnn ich zwischen Pure Basic Befehlszeiten DOS Befehle einbauen? Soll heissen 1 Zeile Pure BAsic auf der anderen DOS? ICh habe Probleme den DOS Befehl "Type 123.xxx >> 456.xxx" in Pure Basic umzusetzten.

- Wie kann ich in einer Konsolenanwendung Zeit und Datum ausgeben?

Danke und Gruss Phil
Benutzeravatar
Sylvia
verheiratet<br>1. PureGolf-Gewinner
Beiträge: 487
Registriert: 29.08.2004 09:42
Wohnort: Old Europe

Beitrag von Sylvia »

Verwechsle 'Konsole' nicht mit 'DOS'. Hat nichts miteinander zu tun.
Schaut nur so ähnlich aus. Das ist aber schon die einzigste Gemeinsamkeit.

zu 1) Ja; siehe Handbuch: ConsoleLocate()

zu 2) Ja; wie gesagt, du kannst alle Möglichkeiten nutzen die PB dir bietet.
Und NUR PB !

zu 3) Nein. Type ist ein DOS-Befehl. Um den Inhalt einer Datei anzusehen
musst du dir eine entsprechende Procedure in PB schreiben. Easy. Findest
genug Beispiele in der Hilfe oder hier im Forum.

zu 4) Ja, mit Print() <)
Basic Pur = PureBasic
Zero_Cool
Beiträge: 84
Registriert: 04.12.2004 15:14

Beitrag von Zero_Cool »

Danke für die Antwort

Das man die Zeit und das Datum per Print ausgeben kann habe ich mir gedacht, nur finde ich im Handbuch die entsprechenden Befehle nicht.

Mir ist schon klar, das die Fragen die ich gestellt habe, mit PB machbar sind, jedoch habe ich die entsprechenden Befehle nicht gefunden, respektive bin mir nicht sicher welche es genau sind.
Benutzeravatar
KeyKon
Beiträge: 1412
Registriert: 10.09.2004 20:51
Computerausstattung: Laptop: i5 2,8 Ghz, 16GB DDR3 RAM, GeForce 555GT 2GB VRAM
PC: i7 4,3 Ghz, 32GB DDR3 RAM, GeForce 680 GTX 4GB VRAM
Win10 x64 Home/Prof
PB 5.30 (64bit)
Wohnort: Ansbach
Kontaktdaten:

Beitrag von KeyKon »

Datum ganz einfach mit Date() und FormatDate() und so.

KeyKon
(\/) (°,,,°) (\/)
Benutzeravatar
PAMKKKKK
Beiträge: 321
Registriert: 21.04.2005 22:08
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von PAMKKKKK »

Sylvia hat geschrieben:zu 2) Ja; wie gesagt, du kannst alle Möglichkeiten nutzen die PB dir bietet.
Und NUR PB !
Sehr hilfreiche aussage ..... /:-> :?

Zu 1.)

Code: Alles auswählen

OpenConsole()
For i = 1 To 10000
  ConsoleLocate(0,1)  
  PrintN ("Das ist ein Zaehler " + Str(i) + " der stehen bleibt!")
Next

PrintN("Druecken Sie Return zum Beenden.")
Input()
CloseConsole()
Zu 2.)
Dazu kann man den DOS Befehl Ping benutzen.
Man kann sich in PB natürlich auch einen eigenen Ping Befehl basteln.
Wenn man die Forensuche benutz kommt man dann findet man das:
http://forums.purebasic.com/german/view ... 3928#53928

Zu 3.)
Da der Befehl Type ein bestandteil der CMD.exe von der Doskonsole ist, ist dieser nicht so einfach zu erreichen (ist mir nicht bekannt wie).
Deshalb habe ich in PB einen eigenen Type befehl geschrieben:

Code: Alles auswählen

OpenConsole()

Procedure Type(DateiName.s)
  HFile = OpenFile(#PB_Any, DateiName.s) ; Datei öffnen
  If HFile ; wenn Datei geöffnet wurde
    While Eof(HFile)= 0 ; Solange das Dateiende nicht erreicht ist
      PrintN(ReadString()) ;Datei Zeilenweise ausgeben
    Wend
    CloseFile(HFile) ; Datei schliessen
  EndIf
EndProcedure

; Aufruf beispiel:
Type("C:\windows\win.ini") ; Hier zum Testen mal die Dateiangabe ändern!

PrintN("Druecken Sie Return zum Beenden.")
Input()
CloseConsole()
Zu 4.)

Code: Alles auswählen

OpenConsole()

PrintN(FormatDate("%dd.%mm.%yyyy", Date()))

PrintN("Druecken Sie Return zum Beenden.")
Input()
CloseConsole()
Wir Schreiben ein PureBasic Buch.
Auch du kannst mitmachen!
http://www.purearea.net/pb/english/pure ... :Main_Page
Zero_Cool
Beiträge: 84
Registriert: 04.12.2004 15:14

Beitrag von Zero_Cool »

Wow, vielen Dank für die Mühe! Hat mir sehr geholfen! Kann man die Zeit auch so darstellen? Ist der Code ändlich wie der beim Datum?
Benutzeravatar
t-master
Beiträge: 6
Registriert: 04.01.2006 00:43
Wohnort: Haselünne (Emsland)

Beitrag von t-master »

Aus der Hilfe
(Date)

Code: Alles auswählen

Debug FormatDate("%hh:%ii:%ss", Date())  ; zeigt die aktuelle Zeit mittels dem 00:00:00 Format
:o Wer lesen kann ist klar im Vorteil :D :mrgreen:
Zero_Cool
Beiträge: 84
Registriert: 04.12.2004 15:14

Beitrag von Zero_Cool »

Super! Perfekt! Danke!
Antworten