WOL
Übersicht

StephanBetreff: WOL |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Gibt es eine Möglichkeit mit BlitzBasic eine WOL (Wake-On-Lan) Funktion zu schreiben?
Ich habe bereits heraus gefunden, dass das Magic Packet 6 mal das Byte FF und danach 16 mal in Folge die Mac-Adresse des Zielrechners beinhaltet. Es besteht also aus 102 Bytes. Mein Prob ist nun, dass ich nicht genau weiß mit welchen BB-Funktionen das jetzt umgesetzt werden kann. Ich habe bereits versucht alles in einen UDP-Stream zu schreiben und zu senden, es hat jedoch nicht gefunzt. ![]() Ich würde mich schon sehr über einen kleinen Tipp freuen. ![]() MfG Stephan |
||
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dazu nüste dein Programm ja laufen, während der rechner aus/standy/sonstwas ist, und das sollte nicht zu realisiseren sein. | ||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
http://stephan.mestrona.net/wol/
Und nein, dazu muss der PC nicht laufen. Lediglich das Motherboard muss es unterstützen und mit Strom versorgt sein (Netzschalter auf "I") |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Stephan |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich würde sagen es ist zu realisieren, da es ja schon zahlreiche Tolls gibt, die so etwas können wie z.B. LanStart.
http://www.spettel.de/lanstart/index.html Die Frage bleibt natürlich ob soetwas mit BB zu realisieren ist, wobei ich denke, dass auch das spätestens mit einer Userlib möglich ist. |
||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Teste es einfach. Sende es erst über Broadcast und dann einfach mal direkt an die IP. Wenn Netzwerkkarte und/oder Motherboard es unterstützen, wird eins von beiden funktionieren. | ||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Steve0 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Angeblich werden mehrere Protokolle unterstützt aber UDP am häufigsten. Der Port kann (auch wieder angeblich) zwischen 0 und 40000 liegen aber gebräuchlich ist 7 oder 9. | ||
Pixelgenaue 2D SingleSurface Engine!!! |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hab hier gerade noch ein Programm dafür geschrieben. Kann es hier nicht testen, da ich WLAN über USB habe.
Musst es mal probieren. Code: [AUSKLAPPEN] ;Grafik
Graphics 800,300,0,2 ;Stream erstellen stream=CreateUDPStream(9) ;Adressen festlegen broadcast_ip$=Input$("Gib bitte die Broadcast Adresse ein: ") adr$=Input$("Gib bitte die MAC Adresse ein. Trennzeichen ist "+Chr(34)+":"+Chr(34)+" ") ;MAC-Adressen einlesen mac1=AHEX(Mid$(adr$,1,2)) mac2=AHEX(Mid$(adr$,4,2)) mac3=AHEX(Mid$(adr$,7,2)) mac4=AHEX(Mid$(adr$,10,2)) mac5=AHEX(Mid$(adr$,13,2)) mac6=AHEX(Mid$(adr$,16,2)) ;Dokumentation der Adresse Print "Starte Sendevorgang an die MAC-Adresse:" Print mac1+":"+mac2+":"+mac3+":"+mac4+":"+mac5+":"+mac6 Print "" ;Sechsmaliges senden der Sequenz $FF Print "Leite WOL Sequenz ein..." For sendit=1 To 6 Print "Sequenz "+sendit+"..." WriteByte stream,255 Next Print "" ;Sechzehnmaliges senden der MAC-Adresse Print "Starten des WOL Vorgangs..." For sendMAC=1 To 16 Print "Vorgang "+sendMAC+"..." WriteByte stream,mac1 WriteByte stream,mac2 WriteByte stream,mac3 WriteByte stream,mac4 WriteByte stream,mac5 WriteByte stream,mac6 Next Print "" ;Absenden an UDP-Stream Print "Starte Übertragung..." SendUDPMsg stream,INT_IP(broadcast_ip$),9 ;Schließen des UDP-Streams Print "Übertragung abgeschlossen." Print "Beenden des UDP-Streams." CloseUDPStream stream Print "" ;Warte auf Taste Print "Erfolgreich." Print "Warte auf Taste." Print "" WaitKey ;Programm beenden Print "Beende Programm." End ;HEX in Integer umwandeln Function AHEX(stri$) l=0 For x=1 To Len(stri$) d$=Mid$(stri$,x,1) Select d$ Case 0,1,2,3,4,5,6,7,8,9 r=Int(d$) Case "A" r=11 Case "B" r=12 Case "C" r=13 Case "E" r=14 Case "F" r=15 End Select l=l Shl 4 + r Next Return l End Function ;String-IP in Integer-IP verwandeln Function INT_IP(IP$) a1=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,".")) a2=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,".")) a3=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,".")) a4=Int(IP$) Return (a1 Shl 24) + (a2 Shl 16) + (a3 Shl 8 ) +a4 End Function |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Stephan |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das Programm sieht wirklich sehr vielversprechend aus, aber leider funktioniert es nicht. ![]() Da muss ich wohl noch etwas herumprobieren. Dabei fällt mir ein, ist das eigentlich richtig, dass weltweit jeder Netzwerkadapter eine einmalige Mac hat? Oder gibt es nur innerhalb eines Herstellers keine Mac doppelt? |
||
MolchMitDolch |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Es gibt weltweit keine gleichen MAC-Adressen da jeder Hersteller seinen eigenen Nummernbereich hat, dadurch können zwei Firmen nicht die gleichen Adresse vergeben (>1min wikipedia--MAC-Adresse--Herstellerkennungen ![]() ...wies aber mit irgendwelcher chinesischer Hinterhofproduktion aussieht weis ich nicht ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group