| |
VB.NET - FortgeschritteneWake On LAN ? | | | Autor: HellSeeker2k | Datum: 22.09.04 08:59 |
| hat jemand von euch ne ahnung wie man per code einen WOL rechner einschaltet ? habe mittlerweile eine kleine anwendung in der ich meine server verwalten kann. jetzt würde mir noch die WOL funktion sehr gut dazu passen. | |
Re: Wake On LAN ? | | | Autor: WaldiMaywood | Datum: 22.09.04 13:22 |
| Es gibt diverse Windows-Tools [1] im Netz. Die meisten Programme erlauben die Übergabe der MAC-Adresse als Parameter. Also, könntest du die Tools mit der .NET Process-Klasse starten. Unter dieser URL [2] findest du auch ein paar Linux-Tools, die OpenSource sind. Die meisten Beispiele sind in C oder Perl gesch. wurden. Könntest dir demnach den Code ja einmal genauer anschauen. (Wenn es dich interessiert ) Hab auch noch dieses VB.NET Bsp. [3] mit Verwendung eines ActiveX im Netz gefunden.
[1] http://gsd.di.uminho.pt/jpo/software/wakeonlan/mini-howto/wol-mini-howto-3.html#ss3.2
[2] http://gsd.di.uminho.pt/jpo/software/wakeonlan/mini-howto/wol-mini-howto-3.html#ss3.1
[3] http://www.free2code.net/code/asp/4/code_411.php
Steve | |
Re: Wake On LAN ? | | | Autor: eclere | Datum: 22.09.04 14:18 |
| hi,
aus ner microsoft newsgroup:
Imports System.Net
Imports System.Net.Sockets
Public Class WakeOnLan
Public Const MAC_ADDR_BYTES As Integer = 6
Private Const PORT_BROADCAST = 2304
' <remarks>
' Constructs and returns a magic packet for the given
MAC address.
' A Magic Packet is 6 bytes of FF followed by the MAC
address 16 times.
' </remarks>
Public Shared Function GetMagicPacket(ByVal macAddress
As String) As Byte()
Dim Packet As Byte() = New Byte(5 + 16 *
MAC_ADDR_BYTES) {} '101 => 102 elements
Dim strNumbers As String() = macAddress.Split(New Char
() {":", ",", ";", "-"})
Dim macBytes As Byte() = New Byte(5) {}
If strNumbers.Length <> 6 Then
Throw New Exception("MAC Address incorrect!!!")
End If
'Convert Numbers to Bytes and set the first 6 FF Values
For i As Integer = 0 To 5
Packet(i) = &HFF
Dim strNumber As String = strNumbers(i)
'Strip possible leading 0x statements
If strNumber.StartsWith("0x") Then
strNumber = strNumber.Substring(2, 2)
End If
macBytes(i) = CByte(Int32.Parse(strNumber,
System.Globalization.NumberStyles.HexNumber))
Next i
'Write the MAC address 16 times after the 6 FF values
For j As Integer = 0 To 15
For i As Integer = 0 To 5
Packet(6 + j * 6 + i) = macBytes(i)
Next i
Next j
Return Packet
End Function
'<remarks>
'Sends the magic packet for a specific MAC address
'</remarks>
Public Shared Sub WakeUp(ByVal macAddress As String)
Dim s As Socket = New Socket
(AddressFamily.InterNetwork, SocketType.Dgram,
ProtocolType.Udp)
s.SetSocketOption(SocketOptionLevel.Socket,
SocketOptionName.Broadcast, 1)
Dim Message As Byte() = GetMagicPacket(macAddress)
Dim IPEP As IPEndPoint = New IPEndPoint
(IPAddress.Broadcast, PORT_BROADCAST)
s.SendTo(Message, IPEP)
End Sub
End Class Gru? eclere | |
Re: Wake On LAN ? | | | Autor: WaldiMaywood | Datum: 22.09.04 14:28 |
| Genial! Danke für den Hinweis. Hast du den Code schon einmal ausprobiert, und Erfolg gehabt?
Steve | |
Re: Wake On LAN ? | | | Autor: HellSeeker2k | Datum: 22.09.04 21:10 |
| thx für die hilfe. werd den code morgen mal testen | |
Re: Wake On LAN ? | | | Autor: Jabberwock_v6 | Datum: 15.01.10 09:29 |
| Moin,
ich wollte nur mal bekannt machen das der Code hier besten funktioniert!
mfg
Jabberwock | |
Re: Wake On LAN ? | | | Autor: Benutzer512 | Datum: 14.04.12 20:14 |
| Der Code Funktioniert einmandfrei!
Ich kann mich nicht beklagen.
jetzt weiß ich was ich machen kann wenn ich mir ein ei koche und darauf warte das es fertig ist.
Ich sag nur WakeOnLanWakeOnLan | |
Re: Wake On LAN ? | | | Autor: noi | Datum: 15.04.12 22:25 |
| Hallo,
beim Abspeichern als .vbs und Ausführen meldet mir WSH einen Fehler in der Zeile "Public Class WakeOnLan": Zeichen 8, "Bezeichner erwartet" (800A03F2).
Was soll ich alles an dem Code anpassen?
Wo soll ich im Code die MAC-Adresse des Computers, der per LAN aufgeweckt werden soll, eintragen?
Wäre es andersrum eventuell möglich mit diesem Code einen Rechner aufzuwecken, der nicht per LAN-Patch-Kabel sondern per WLAN mit dem Router verbunden und im lokalen Netzwerk sichtbar ist?
Vielen Dank! | |
Re: Wake On LAN ? | | | Autor: FZelle (Moderator) | Datum: 16.04.12 11:04 |
| Das hier ist VB.NET nicht VBScript.
Und nein, WOL kann nicht über WLAN funktionieren. | |
Re: Wake On LAN ? | | | Autor: noi | Datum: 16.04.12 17:51 |
| kein Problem, dann schließe ich das LAN-Patch-Kabel an.
Warum kommt es zu der oben genannten Fehlermeldung? Was muss ich an dem Code alles anpassen? | |
Re: Wake On LAN ? | | | Autor: FZelle (Moderator) | Datum: 16.04.12 17:55 |
| Es kommt zu der Fehlermeldung weil du nicht VB.NET benutzt, sondern VBScript.
Die haben nicht viel miteinander gemein. | |
Re: Wake On LAN ? | | | Autor: noi | Datum: 16.04.12 20:58 |
| heißt das, dass wenn ich kein VB .NET installiert habe, ich den Skript nicht ausführen kann?
Wenn ich die Erweiterug auf .vb ändere, erscheint die Datei als unbekannter Typ.
Was soll ich tun? | |
Re: Wake On LAN ? | | | Autor: noi | Datum: 17.04.12 00:04 |
| hm... bin ja die ganze Zeit dabei... | |
Re: Wake On LAN ? | | | Autor: Jabberwock_v6 | Datum: 17.04.12 07:34 |
| Das ist kein Script sonder der Quellcode für eine Anwendugn (.exe)
Mit VBS gehts nicht. Zumindest nicht so | |
Re: Wake On LAN ? | | | Autor: noi | Datum: 17.04.12 09:18 |
| das ist dennoch eine Antwort. Nun weiß ich es.
Danke | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
TOP! Unser Nr. 1
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|