Hi
ich bin langsam am Verzweifeln.
Das Problem ist hier folgendes: Wenn ich den sw.WriteLine(...) so schreibe, ohne die Do Loop, dann macht er mir auch ganz brav, was er soll. Sobald ich aber die Zeile in die Do Loop stecke, schreibt er mir nichts raus.
Meine erste Theorie war, dass die Do Loop Schleife das Ergenis des Pings gar nicht abwartet, und einfach weiter macht. Aber dann wäre ja das ganze Prinzip von Schleifen im A...
Die zweite wäre dann, dass der StreamWriter dadurch, dass ich die Do Loop beende, indem ich Strg+C drücke, den Sream nicht abschließt. Also habe ich vor End Using noch ein sw.Close() eingefügt...Hat auch nix gebracht.
Was mich aber wirklich nervt und auch schon zur Weißglut bringt, ist die Tatsache, dass, wenn der Ping erfolgreich war, dann schreibt er mir das auch in die Datei weg. Ebenso auch wenn ich zuerst eine Verbindung habe, dann wieder nicht. Dann schreibt er mir den Teil, wo ich Verbindung habe, in die Datei. Aber wenn ich zuerst keine Verbindung habe, dann schon und dann wieder nicht, dann schreibt er den Teil in dem ich zuerst keine Verbindung habe, dann den in dem ich wieder eine habe, aber nicht den, in dem ich wieder keine habe.
Ich hab auch schon versucht, mir den Inhalt von sw.WriteLine(...) anzuzeigen (Console.WriteLine(ping.Send(ip).Status)). Da zeigt er mir dann an, dass es keine Verbindung hat (er gibt mir hier den Code 11003 aus, der für DestinationHostUnreachable steht).
Aber langsam verstehe ich es nicht mehr. Wenn ich eine Do Loop Schleife habe, dann macht der das bis ich es irgendwie beende(Strg+C). Wenn ich dann sage mach in der Endlosschleife "schreibe in die Datei xyz.txt bitte den Wert aus ping.Send(ip).Status, also einen IPStatus-Integer-Wert und der gibt mir den Statuswert nur zurücke und schreibt ihn auch, wenn der Ping erfolgreich war und sonst gibt mir der den Wert zurück, schreibt ihn aber nicht in die Datei...Da kann doch irgendwas nicht stimmen, oder sehe ich das falsch?
ich bin langsam am Verzweifeln.
Visual Basic-Quellcode
Das Problem ist hier folgendes: Wenn ich den sw.WriteLine(...) so schreibe, ohne die Do Loop, dann macht er mir auch ganz brav, was er soll. Sobald ich aber die Zeile in die Do Loop stecke, schreibt er mir nichts raus.
Meine erste Theorie war, dass die Do Loop Schleife das Ergenis des Pings gar nicht abwartet, und einfach weiter macht. Aber dann wäre ja das ganze Prinzip von Schleifen im A...
Die zweite wäre dann, dass der StreamWriter dadurch, dass ich die Do Loop beende, indem ich Strg+C drücke, den Sream nicht abschließt. Also habe ich vor End Using noch ein sw.Close() eingefügt...Hat auch nix gebracht.
Was mich aber wirklich nervt und auch schon zur Weißglut bringt, ist die Tatsache, dass, wenn der Ping erfolgreich war, dann schreibt er mir das auch in die Datei weg. Ebenso auch wenn ich zuerst eine Verbindung habe, dann wieder nicht. Dann schreibt er mir den Teil, wo ich Verbindung habe, in die Datei. Aber wenn ich zuerst keine Verbindung habe, dann schon und dann wieder nicht, dann schreibt er den Teil in dem ich zuerst keine Verbindung habe, dann den in dem ich wieder eine habe, aber nicht den, in dem ich wieder keine habe.
Ich hab auch schon versucht, mir den Inhalt von sw.WriteLine(...) anzuzeigen (Console.WriteLine(ping.Send(ip).Status)). Da zeigt er mir dann an, dass es keine Verbindung hat (er gibt mir hier den Code 11003 aus, der für DestinationHostUnreachable steht).
Aber langsam verstehe ich es nicht mehr. Wenn ich eine Do Loop Schleife habe, dann macht der das bis ich es irgendwie beende(Strg+C). Wenn ich dann sage mach in der Endlosschleife "schreibe in die Datei xyz.txt bitte den Wert aus ping.Send(ip).Status, also einen IPStatus-Integer-Wert und der gibt mir den Statuswert nur zurücke und schreibt ihn auch, wenn der Ping erfolgreich war und sonst gibt mir der den Wert zurück, schreibt ihn aber nicht in die Datei...Da kann doch irgendwas nicht stimmen, oder sehe ich das falsch?
In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell