Hi,
Ich schreibe gerade ein Programm zum System Sperren, es funktioniert auch super nur mit Ctrl+Alt+Del kommt man immernoch in die Windows-Sicherheit und kann sich abmelden/den pc herunterfahren, nun hab ich schon öfter Anwendungen gesehen die sich über den Anmelde Screen legen können und auch sichtbar sind wenn man in der Windows-Sicherheit ist, wie geht sowas?
Schonmal THX in voraus!
mfg
125
System Abriegeln
System Abriegeln

Das ist Tux. Kopiere Tux in deine Signatur und hilf ihm so auf seinem Weg zur Weltherrschaft.- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
>> wie kann ich den namen des eingeloggten Users herrausfinden?
Code: Alles auswählen
Procedure.s GetUserName()
Prg.s = Space(#MAX_PATH):len=#MAX_PATH
GetUserName_( @Prg, @len)
ProcedureReturn Prg
EndProcedure
Debug GetUserName()PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- NicTheQuick
- Ein Admin
- Beiträge: 8812
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Ich hab hier einen Code von Danilo. Vielleicht hilft der dir weiter:
Code: Alles auswählen
;
; by Danilo, Posted - 26 Sep 2002 : 03:14:34 (engl. forum)
;
; merendo,
;
; on winNT/2000/XP no program is allowed To
; block the CTRL+ALT+DEL, because this would
; be a security risc.
; Every program could block CTRL+ALT+DEL And
; do what it wants... And the user couldnt stop
; it anymore.
;
; If you use Windows98, you can do it by telling
; windows your app is a screensaver.
;
; This code disables ALT+TAB, ATL+ESC, And Windows-Keys...
; ...also on Win2000:
; The line " SystemParametersInfo_( #SPI_SCREENSAVERRUNNING, 1, @Dummy, 0) "
; is For Windows 9x Systems.
; It tells Windows that a screensaver is running, so it blocks
; all other input on Win9x.
SystemParametersInfo_( #SPI_SCREENSAVERRUNNING, 1, @dummy, 0);
OpenLibrary(1,"kernel32.dll")
CallFunction(1,"RegisterServiceProcess", GetCurrentProcessID_(), 1 )
Structure KBDLLHOOKSTRUCT
vkCode.l
scanCode.l
flags.l
Time.l
dwExtraInfo.l
EndStructure
Procedure.l myKeyboardHook(nCode, wParam, *P.KBDLLHOOKSTRUCT)
If nCode = #HC_ACTION
If wParam = #WM_KEYDOWN Or wParam = #WM_SYSKEYDOWN Or wParam = #WM_KeyUp Or wParam = #WM_SYSKEYUP
#LLKHF_ALTDOWN = $20
If ((*P\vkCode = #VK_TAB) And (*P\flags & #LLKHF_ALTDOWN)) Or ((*P\vkCode = #VK_ESCAPE) And (*P\flags & #LLKHF_ALTDOWN)) Or ((*P\vkCode & #VK_ESCAPE) And (GetKeyState_(#VK_CONTROL) & $8000)) ;Or
ProcedureReturn 1
ElseIf (*P\vkCode = #VK_LWIN) Or (*P\vkCode = #VK_RWIN)
ProcedureReturn 1
EndIf
EndIf
EndIf
;beep_(800,1)
ProcedureReturn CallNextHookEx_(0, nCode, wParam, lParam)
EndProcedure
; Win NT
#WH_KEYBOARD_LL = 13
hook = SetWindowsHookEx_(#WH_KEYBOARD_LL,@myKeyboardHook(),GetModuleHandle_(0),0)
;If hook = 0: End: EndIf
hwnd = OpenWindow(1,10,10,100,100,#PB_Window_BorderLess,"")
ShowWindow_(hwnd, #SW_MAXIMIZE)
;SetWinBackgroundColor(hwnd,0)
CreateGadgetList(hwnd)
hString = StringGadget(1,GetSystemMetrics_(#SM_CXSCREEN)/2-100/2, GetSystemMetrics_(#SM_CYSCREEN)/2,100,20,"Enter Password",#PB_String_Numeric)
SetFocus_(hString)
GetWindowRect_(hString, winrect.RECT)
;SetThreadPriority_(GetCurrentThread_(),#REALTIME_PRIORITY_CLASS)
Repeat
message = WindowEvent()
SetActiveWindow_(hwnd)
SetWindowPos_(hwnd,#HWND_TOPMOST,0,0,0,0,#SWP_NOMOVE|#SWP_NOSIZE)
ClipCursor_(winrect)
SendMessage_(hString,#WM_KEYDOWN,#VK_END,0)
SetFocus_(hString)
If message
Select message
Case #PB_EventGadget
Select EventGadgetID()
Case 1
If GetGadgetText(1) = "123"
UnhookWindowsHookEx_(hook)
ClipCursor_(0)
SystemParametersInfo_( #SPI_SCREENSAVERRUNNING, 0, @dummy, 0);
End
EndIf
EndSelect
EndSelect
Else
Delay(1)
EndIf
ForEver
; But CTRL+ALT+DEL can on win2000 only be disabled
; by writing a lowlevel system device driver For the keyboard.
; Info about this should be in the MS DDK.
;
; Best way For you would be To install win98
; on your disco machine...
;
; cya,
; ...Danilo
;
; (registered PureBasic user)
; THX, aber den hab ich schon, leider ist der nicht CtrlAltDel sicher wenn die Wilkommenseite abgeschaltet ist die Windowsicherheit blendet den kompletten desktop aus und ihr fenster einNicTheQuick hat geschrieben:Ich hab hier einen Code von Danilo. Vielleicht hilft der dir weiter:
Services werden ja als SYSTEM ausgeführtProcedure.s GetUserName()
Prg.s = Space(#MAX_PATH):len=#MAX_PATH
GetUserName_( @Prg, @len)
ProcedureReturn Prg
EndProcedure
Debug GetUserName()

Das ist Tux. Kopiere Tux in deine Signatur und hilf ihm so auf seinem Weg zur Weltherrschaft.