DeV_187 Geschrieben 15. März 2002 Geschrieben 15. März 2002 Hab im Linux Forum was aufgeschnappt von wegen blinkenden Tastatur LED´s was den Netztraffic betrifft. Hab dann mal nach ner Windows Variante gesucht aber nix gefunden. Weiss einer von euch obs sowas gibt? Oder wie man per VB die LED´s ein/ausschalten kann? Danke, DeV Zitieren
MarcG Geschrieben 15. März 2002 Geschrieben 15. März 2002 Habs unter Windows noch nie probiert, aber mit dem Amiga damals ging das und ich habs mal gemacht, allerdings nur mit Assembler, da man bestimmte Speicherzellen ändern musste um die LED zu ändern. Wie das in Linux geregelt ist weiss ich nicht, aber zieh dir doch einfach mal den Quelltext ... Zitieren
DeV_187 Geschrieben 15. März 2002 Autor Geschrieben 15. März 2002 hmm ich hab nen angeblichen quelltext für pascal (glaub ich zumindest) gefunden. Aber damit kann ich als VB-Anfänger nich viel anfangen { CL>Does anyone know how to make the Num Lock,Caps Lock, and Scroll lock lights CL>turn on and off? --------------------------------8<----------------- $40:$17 BYTE Keyboard status flags 1: bit 7 =1 INSert active bit 6 =1 Caps Lock active bit 5 =1 Num Lock active bit 4 =1 Scroll Lock active bit 3 =1 either Alt pressed bit 2 =1 either Ctrl pressed bit 1 =1 Left Shift pressed bit 0 =1 Right Shift pressed Port[$3F2] w diskette controller DOR (Digital Output Register) bit 7-6 reserved PS/2 bit 7 = 1 drive 3 motor enable bit 6 = 1 drive 2 motor enable bit 5 = 1 drive 1 motor enable bit 4 = 1 drive 0 motor enable bit 3 = 1 diskette DMA enable (reserved PS/2) bit 2 = 1 FDC enable (controller reset) = 0 hold FDC at reset bit 1-0 drive select (0=A 1=B ..) } Program BlinkBlink; { you MUST have a diskette in drive 'B' to use this } Uses CRT; CONST DiskCtr = $03F2; VAR i,j : Byte; OldKB : Byte; KBStat : Byte Absolute $40:$17; Out : Byte; ch:char; BEGIN i:=$40; j:=0; OldKB:=KBStat; Writeln('So blink Drive B: ... Taste druecken'); {Eigentlich sollte auch Drive A: blinken, aber das klappt bei mir irgend-} {wie nicht :-( } Repeat Delay(500); Out:=j OR $F0; Port[DiskCtr]:=Out; j:=(j+1) MOD 2; Until Keypressed; ch:=ReadKey; Writeln('Und so die Tastatur-LEDs ... Taste druecken'); Repeat KBStat:=i; Delay(100); if Keypressed then nosound; i:=i SHR 1; If i=$8 then i:=$40; Until Keypressed; KBStat:=OldKB; END. Hab das so wies is einfach mal mit FreePascal kompiliert aber da ging nix Zitieren
Technician Geschrieben 15. März 2002 Geschrieben 15. März 2002 Hi! Mit VB geht's, ich hab den Code schon mal wo gesehen... Hab ihn aber leider nimmer Versuch's mal nach +led+tastatur+vb zu googeln - hoffentlich findest du da was! Gruß, Technician Zitieren
DeV_187 Geschrieben 15. März 2002 Autor Geschrieben 15. März 2002 hmm ne das hab ich schon über ne stunde versucht das einzige was ich immer find is das prog für linux und eben den oben genannten code.. Zitieren
SEmteX Geschrieben 20. März 2002 Geschrieben 20. März 2002 mit vb ist das eigentlich sehr einfach, nämlich mit "SendKeys" (die LEDs direkt ansteuern geht natürlich nicht, man muss immer auch die dazugehörige funktion aktivieren) dazu gibts natürlich auch nen schönen API, aber wenn du anfänger bist.... hier in der syntax: SendKeys "{CAPSLOCK}" ' schaltet feststelltaste an ;-) SendKeys "{NUMLOCK}" ' numlock SendKeys "{SCROLLOCK}" ' rollen ich hoff mal ich hab die frage richtig verstanden, was du mit "netztraffic" willst weiss ich nicht. Zitieren
DeV_187 Geschrieben 3. April 2002 Autor Geschrieben 3. April 2002 ne das wollt ich eben vermeiden sondern direkt auf die hardware also die LED´s ansprechen. Sonst is ja die Tasta weitesgehend ausser Gefecht gesetzt wenn ich Caps Lock ständig ein-/ausschalte dann kann man ja nimmer richtig tippen Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.