eine gina.dll schreiben will ich eigentlich nicht

Code: Alles auswählen
;- PS/2-Tastatur über Port 64h aus/einschalten
;- Nutzung der WinRing0-Dll´s (32-und 64-Bit). Copyright (c) 2007-2009 OpenLibSys.org. All rights reserved.
;- "Helle" Klaus Helbing, 18.09.2010, PB 4.51 (x86, x64)
SI.SYSTEM_INFO ;Structure System_Info
#PROCESSOR_ARCHITECTURE_AMD64 = $9
GetSystemInfo_(@SI)
If OpenWindow(0, 0, 0, 250, 100, "Tastatur de/aktivieren", #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget)
;ermitteln, ob 32- oder 64-Bit-Betriebssystem
If SI\wProcessorArchitecture = #PROCESSOR_ARCHITECTURE_AMD64
OS3264 = 1
EndIf
;die entsprechende DLL öffnen
If OS3264
DLLOK = OpenLibrary(0, "WinRing0x64.dll") ;64-Bit-Version laden
Else
DLLOK = OpenLibrary(0, "WinRing0.dll") ;32-Bit-Version laden
EndIf
If DLLOK
Prototype.i ProtoWinRing0_0()
WR0_InitializeOls.ProtoWinRing0_0 = GetFunction(0, "InitializeOls")
WR0_DeinitializeOls.ProtoWinRing0_0 = GetFunction(0, "DeinitializeOls")
Prototype.i ProtoWinRing0_2(V1w.w, V2b.b)
WR0_WriteIoPortByte.ProtoWinRing0_2 = GetFunction(0, "WriteIoPortByte")
If WR0_InitializeOls()
OptionGadget(0, 30, 20, 150, 20, "Tastatur ist aktiviert")
OptionGadget(1, 30, 45, 150, 20, "Tastatur ist deaktiviert")
SetGadgetState(0, 1)
ActiveGadget_Old = 0
Repeat
If GetActiveGadget() <> ActiveGadget_Old
If GetGadgetState(0)
WR0_WriteIoPortByte($64, $AE) ;Tastatur ein
ActiveGadget_Old = 0
ElseIf GetGadgetState(1)
WR0_WriteIoPortByte($64, $AD) ;Tastatur aus
ActiveGadget_Old = 1
EndIf
EndIf
Until WaitWindowEvent() = #PB_Event_CloseWindow
WR0_DeinitializeOls()
EndIf
EndIf
EndIf
Klasse Post - darf man fragen, was das für eine Datei sein soll und was sie bewirkt?hjbremer hat geschrieben:http://www.findthatfile.com/search-1050 ... mp-zip.htm
Nicht böse sein, aber ich bin genauso schlau wie vorherLord hat geschrieben:Enthält die von Rings benutzte WinRing.dll.
Code: Alles auswählen
MOV al,0ADh
OUT 64h,al ;Tastatur sperren
MOV al,0AEh
OUT 64h,al ;Tastatur aktivieren