Coding-BS

Blog eines zukünftigen Fachinformatikers

Mal wieder versucht zu programmieren…

Verfasst von teddya4 am 15. August 2008

Es ist mal wieder geschafft! Ich bin völlig am Ende und habe keine Ahnung mehr was ich noch machen soll. Ich wollte für meinen Vater eine WOL-Konsolenanwendung schreiben, da die meisten, die er sich geladen hatte nicht funktionierten. Zuerst rechachierte ich ein wenig im Internet um herauszufinden, welcher Code denn nun bewirkt, dass ein Rechner “aufgeweckt” wird. Schon nach kurzer Zeit fand ich eine gute Erklärung:

Das WOL-Signal besteht aus 102 Bytes. Es enthält 6x in Folge den Wert FF gefolgt von 16x der MAC Adresse. Diese Nachricht wird als Broadcast ans Netzwerk gesendet.

So, nun kam die Umsetzung. Die Syntax für broadcasting war mir leider mal wieder entfallen. Aber, wozu gibts das Internet? Über die Online-Hilfe von der Microsoft Visual Basic 2008 Express Edition fand ich dann auch die passende Syntax. Nun die erste große Frage: Wie bekomme ich diesen großen Wert in einen Send-Befehl unter?

instance.send(6*”FF”, 12*”MacAdresse”)

Prompt kam die Meldung, dass es keinen send-Befehl gäbe, der solch eine große Menge an Daten unterbringt. Ich probierte noch einige Stunden daran herum, bis ich letztendlich mit

Do while x = 6

endmessage.CopyTo(array, WOLSignal)

loop

ganz zufrieden war. Fast das gleiche dann nochmal mit der Mac-Adresse. Bis es dann ans verschicken der Daten geht, läuft das Programm einwandfrei. Nur leider meint Visual Basic:

Der Wert vom Typ “Byte” kann nicht in “1-dimensionales Array von Byte” konvertiert werden.

Nun, mittlerweile sind so ca 3-4 Stunden vergangen und ich habe immernoch keine Lösung für das Problem. Und die Jungs von Goggel sind auch schon am Boden ;-)

Mal sehn wie das noch weitergeht…

Einen Kommentar schreiben

XHTML: Du kannst diese Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>