Forum | | | | - page 1 - |
| Penguin Tux | Salut,
je voudrais mich ersteinmal présenter. mon nom ist Tony, je suis 15 Jahre vieux et besuche une Realschule dans Chemnitz. là je maintenant Sommerferien habe et je rien plus trop 1faire habe, habe je mir vorgenommen un kleines Netzwerkanalysetool trop écrivons. sur qui cherche pour einer einfachen Programmiersprache suis je sur XProfan gestoßen.
j'ai alles nötige gedownloaded et installiert, anschließen habe je pour einem Pingcode gesucht et habe cette:
declare pingstring$,ping$,ping%
********************************************************************
Proc Ping
Paramètres nic$,pingdatei1$,pingdatei2$
let pingstring$="PING.EXE",nic$,">",pingdatei1$
Assign #6,pingdatei2$
Rewrite #6
Imprimer #6,pingstring$
Fermer #6
WinExecwait(pingdatei2$,0)
Assign #5,pingdatei2$
Effacer #5
ASSIGN #3,pingdatei1$
RESET #3
Ping%=0
WHILENOT EOF(#3)
input #3,ping$
ping$=mid$(ping$,1,11)
cas equ$(ping$,"Antwort von"):Ping%=1
WEND
CLOSE #3
Assign #1,pingdatei1$
Effacer #1
ENDPROC
********************************************************************
Beschreibung:
Es gibt zwar déjà une schnelle et belle Onlineabfrage über API,
mais malheureusement gibt qui Funktion seulement 1 pour Online zurück, si
on über un Standart DFÜ eingewählt est.
cet Procédure ist arrêt seulement quelque chose langsamer mais on peux sogar DSL
(alors - aucun DFÜ-liaison) ou bien cela vieille T-Online u.s.w abfragen!!
alles avec einem Stern umrandete ist important pour qui Abfrage
Rolf Koch - Rokosoftware - Koblenz 2002
BEISPIEL
WINDOWSTYLE 31
Fenêtre 200,200-300,80
Windowtitle "Onlinstatus-Prüfung sans Api"
Couleur du texte RGB(0,0,255),-1
UseFont "TIMES NEW ROMAN",20,10,0,0,0
DRAWTEXT 40,10,"..moment ermittele!"
ICI JETZT DER AUFRUF DER PROZEDUR:********************
PING ADRESSE,ERGEBNISDATEI,BATCHDATEI
paramètre
1.) Webadresse - une toujours vorhandene comment www.nic.de
2.) Dateiname, dans quelle Pingergebnis geschrieben wird - wird wieder gelöscht!
3.) Dateiname, um Ping korrekt aufzurufen. - wird wieder gelöscht!
********************************************************
Couleur du texte RGB(255,255,255),RGB(255,255,255)
DRAWTEXT 40,10," "
UseFont "TIMES NEW ROMAN",25,20,1,0,0
Couleur du texte RGB(0,0,255),-1
Ping "192.168.0.7","PINGTEST.TXT","PING.BAT"
si equ(ping%,1)
DRAWTEXT 25,10,"Erreichbar"
d'autre
DRAWTEXT 25,10,"Nicht erreichbar"
endif
waitinput
Diesen Code habe je mir pour meinen Bedürfnissen zurechtgeschnitten et il voit comment folgt aus. en supplément devrait je qui de mir ausgedachte Funktionsweise expliquer.
c'est geplant, dass je un Tool schreibe, welches possible simple une erste Aider pour Schüler et l'instituteur bietet. Bemerkt un User cela il keinen Internetzugang hat, führt il Tool aus, welches qui Reihe pour seulement den Server anpingt, ensuite une anderen Client im Netzwerk et ensuite encore une calculateur de außerhalb (z.B. Google). si es chez einer qui Schritte aucun Rückmeldung gibt, soll une annonce avec Tips zur Behebung sur dem Bildschrim erscheinen.
eh bien zum Code:
declare pingstring$,ping$,ping%
Proc Ping
Paramètres nic$,pingdatei1$,pingdatei2$
let pingstring$="PING.EXE",nic$,">",pingdatei1$
Assign #6,pingdatei2$
Rewrite #6
Imprimer #6,pingstring$
Fermer #6
WinExecwait(pingdatei2$,0)
Assign #5,pingdatei2$
Effacer #5
ASSIGN #3,pingdatei1$
RESET #3
Ping%=0
WHILENOT EOF(#3)
input #3,ping$
ping$=mid$(ping$,1,11)
cas equ$(ping$,"Antwort von"):Ping%=1
WEND
CLOSE #3
Assign #1,pingdatei1$
Effacer #1
ENDPROC
WINDOWSTYLE 31
Fenêtre 200,200-500,80
Windowtitle "Onlinstatus-Prüfung sans Api"
Couleur du texte RGB(0,0,255),-1
UseFont "TIMES NEW ROMAN",20,10,0,0,0
DRAWTEXT 40,10,"..moment ermittele!"
Couleur du texte RGB(255,255,255),RGB(255,255,255)
DRAWTEXT 40,10," "
UseFont "CANDARA",25,20,1,0,0
Ping "127.0.0.1","PINGTEST.TXT","PING.BAT"
si equ(ping%,1)
Couleur du texte RGB(0,255,0),-1
DRAWTEXT 25,10,"Server Erreichbar"
d'autre
Couleur du texte RGB(255,0,0),-1
DRAWTEXT 25,10,"Server pas erreichbar"
endif
Ping "192.168.0.1","PINGTEST.TXT","PING.BAT"
si equ(ping%,1)
Couleur du texte RGB(0,255,0),-1
DRAWTEXT 25,10,"Client Erreichbar"
d'autre
Couleur du texte RGB(255,0,0),-1
DRAWTEXT 25,10,"Client pas erreichbar"
endif
Ping "www.google.de","PINGTEST.TXT","PING.BAT"
si equ(ping%,1)
Couleur du texte RGB(0,255,0),-1
DRAWTEXT 25,10,"Google Erreichbar"
d'autre
Couleur du texte RGB(255,0,0),-1
DRAWTEXT 25,10,"Google pas erreichbar"
endif
waitinput
un Problem, welches sich zur Zeit auftut, ist qui Tatsache cela qui Fensterinhalt pas gelöcht wird. cela est cela "Server Erreichbar", "Client Erreichbar" et "Google Erreichbar" übereinander geschrieben volonté, alors brauche je une Possibilité den le contenu des Fensters pour chaque Schritt trop effacer. Dabei suis sur
gestoßen. Nutze je cet Possibilité avant bzw. pour "Server Erreichbar" wird "Server Erreichbar" gar pas angezeigt.
Pour une kleine Hilfestellung wäre je très reconnaissant.
merci Tony |
| | | | |
| | | | | - page 9 - |
| Rolf Koch | Hab la fois mon concept grade mise en œuvre. Einiges ginge kürzer, mais es soll oui übersichtlich et simple erklärt son. quoi Du encore faire musst: Passe den Code wieder trop Profanversion 6.6 à, là je sur den neusten Interpreter getestet habe et add, inc et co pas plus vorhanden sommes et je maintenant aucun Zeit plus habe. Eingabe par Leerzeichen getrennt! Ausgabe des Ergebnis erfolgt wiederum ins Eingabefenster (pourrait aussi gesammelt angezeigt volonté et pas einzeln - comment dit Zeit trop knapp). peux aussi par Schnelltippen son, dass je ne Kleinigkeit übersehen ou bien oublier qc habe - mais Du musst oui aussi quoi en supplément beitragen ^ ^
Déclarer-partie:
declare ping%, btn%,ende%,ipedit&,ipinhalt$,i%
declare marque$,zeichenalt$
Proc-partie:
Proc Ping
Ping%=0
declare pingdatei1$, pingdatei2$, pingstring$, ping$
Paramètres ip$
let pingdatei1$="PINGTEST.TXT"
let pingdatei2$="PING.BAT"
let pingstring$="PING.EXE",ip$,">",pingdatei1$
Assign #6,pingdatei2$
Rewrite #6
Imprimer #6,pingstring$
Fermer #6
WinExecwait(pingdatei2$,0)
Assign #5,pingdatei2$
Effacer #5
ASSIGN #3,pingdatei1$
RESET #3
Ping%=0
WHILENOT @EOF(#3)
input #3,ping$
ping$=mid$(ping$,1,11)
cas ping$="Antwort von":Ping%=1
WEND
CLOSE #3
Assign #1,pingdatei1$
Effacer #1
ENDPROC
Def-partie:
DEF GetSysColor(1) !"User32","GetSysColor"
la fenêtre erstellen:
Fenêtre Style 63
Titre de la fenêtre "IP Checker"
Fenêtre @SUB(@DIV(%maxx,2),300),@SUB(@DIV(%maxY,2),250) - 600,500
Fenêtre 10,10-600,500
SetTrueColor 1
CLS GetSysColor(15)
ipedit&=@CreateMultiEdit(%HWnd,»,10,50,570,-200)
btn%=@CreateButton(%HWnd,"Überprüfen",250,260,100,30)
Whilenot ende%
waitinput
si clicked(btn%)
marque$=»
zeichenalt$=»
ipinhalt$=GetText $(ipedit&)
si mid$(ipinhalt$,len(ipinhalt$),1) <> " " sicherstellen Abschlusszeichen
ipinhalt$=ipinhalt$+" "
endif
i%=1
whilenot i% = len(ipinhalt$)+1
marque$=mid$(ipinhalt$,i%,1)
inc i%
si marque$ <> " "
marque$=zeichenalt$+marque$
zeichenalt$=marque$
d'autre
ping zeichenalt$ ici Ping Ergebnis
si ping%=1
settext ipedit&,zeichenalt$+" ist verfügbar"
d'autre
settext ipedit&,zeichenalt$+" ist pas verfügbar"
endif
zeichenalt$=»
endif
endwhile
endif
Endwhile
|
| | | | |
| | Stefan Landsberg | DANKE Rolf cela einzige quoi Profan 6.6 bemängelt ist qui funktion clicked. mais qui hab je simple par getfocus ersetzt.
hab mich jetz gründlich avec deinem Code befasst et hab ihn verstanden
jetz muss je ihn nurnoch irgendwie umändern avec cela es meiner ist, et ensuite muss je ihn dans mon programm einarbeiten. |
| | | | |
| | Rolf Koch | Freut mich, dass Du es angenommen la hâte et cette aussi verstanden la hâte! |
| | | | |
| | Stefan Landsberg | Salut,
j'ai jetz Rolfs code dans mon programm eingebunden. comme je avec cela fertig était voulais je seulement encore cela marque de leerzeichen sur paragraphe umändern. voilà mir aufgefallen, dass on cela chez absätzen besser avec @getlinecount et @getline$ realisieren peux.
jusqu'à jetz sieht cela chez mir so aus: [...]
mais irgendwie venez cela programm chez mir dans ne endlosschleife et fäng, après que es den status qui letzten ip ausgegeben hat, wieder de qui ersten ip à. je sais mais simple pas wohin mon faute ist.
PS: cela design plane je trop améliorer.
Éditer: suis jetz déjà quelque chose plus. qui faute liegt dans la ligne 56. @getlinecount(ipinput%) liefert une numéro im millionenbereich. c'est alors aucun endlosschleife. vous dauert seulement très longtemps! spass chez page: pourquoi gibts getlinecount so une grosse numéro zurück? je dachte il y a qui zeilenanzahl à. et qui liegt chez meinen tests chez 2 jusqu'à 4. et pas im millionenbereich! |
| | | | |
| | | Stefan Löwen
suis jetz déjà quelque chose plus. qui faute liegt dans la ligne 56. @getlinecount(ipinput%) liefert une numéro im millionenbereich. c'est alors aucun endlosschleife. vous dauert seulement très longtemps! spass chez page: pourquoi gibts getlinecount so une grosse numéro zurück? je dachte il y a qui zeilenanzahl à. et qui liegt chez meinen tests chez 2 jusqu'à 4. et pas im millionenbereich!
et oui c'est ca c'est z.B. un völlig nouveau Thema - avec einem eigenen Minimalbeispiel. ;) |
| | | | |
| | Stefan Landsberg | meinst du je soll une neuen thread ouvert ou bien quoi wolltest du mir dire? |
| | | | |
| | | oui, s'il te plaît. |
| | | | |
| | Stefan Landsberg | profan hat quoi vers mich. jetz était je déjà dabei mon problem dans einem neuen thread trop schildern et voulais den code posten. là hab je cela programm encore einmal vite durchlaufen laisser, et quoi passiert?!?
@GetLineCount gibt den richtigen Wert zurück
bof, je freu mich lieber, dass es jetz allez et fais plus. je veux au sommet qui 6 seiten encore mon erstes programm präsentieren |
| | | | |
| | | Exakt c'est pourquoi mon s'il te plaît zum neuen Fil - là wird on puis hingewiesen un [...] abzuliefern - ließ la fois jusqu'à zum Ende et lach... |
| | | | |
| | Stefan Landsberg | qui geschichte avec dem minimalbeispiel de Roland Hennrich kenn je déjà
mais je hatte cela Programme vorhin mindestens 5 la fois getestet et @getlinecount était abîmé
et je voulais ne...aucune minimal beispiel posten, mais den kompletten code (peux on mais aussi minimal appeler ) hab alors rien modifié et sur einmal gings.
bof je darf pas so viel écrivons, sonst krieg je mon programm pas plus sur page 6 |
| | | | |
| | | je fand "Roland Hennrich" passt... |
| | | | |
| | | | - page 10 - |
| | Stefan Landsberg | irgendwie is tmir cela trop unübersichtlich geworden. c'est pourquoi dachte je je fais ici plus: [...]
hoffentlich störs keinen. |
| | | | |
|
répondreOptions du sujet | 23.551 Views |
Themeninformationencet Thema hat 9 participant: |