Page 2 sur 3

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 1:25
par Ar-S
Perso je procèderai comme ceci (en complément de ce qui a été dit au dessus) .

- 1 programme A contenant une programme B
- Le programme principale A ouvre une fenêtre sans bordure en sticky1(qui représente optionnellement un screenshot du bureau histoire de leurrer un peu les curieux) ainsi que l'interface principale. Il lance aussi B
- B est lancé en tache de fond. Son seul but : surveillé que A tourne et le relancer au besoin, il doit aussi "tuer" le gestionnaire de tache s'il est appelé (avec a droopylib c'est facile) ou désactiver ctrl alt sup.
Je pense qu'ainsi on obtiendrait quelque chose de pas mal sans avoir à brasser l'explorer.

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 10:11
par Thyphoon
Ar-S a écrit :Perso je procèderai comme ceci (en complément de ce qui a été dit au dessus) .

- 1 programme A contenant une programme B
- Le programme principale A ouvre une fenêtre sans bordure en sticky1(qui représente optionnellement un screenshot du bureau histoire de leurrer un peu les curieux) ainsi que l'interface principale. Il lance aussi B
- B est lancé en tache de fond. Son seul but : surveillé que A tourne et le relancer au besoin, il doit aussi "tuer" le gestionnaire de tache s'il est appelé (avec a droopylib c'est facile) ou désactiver ctrl alt sup.
Je pense qu'ainsi on obtiendrait quelque chose de pas mal sans avoir à brasser l'explorer.
L'idée est pas mauvaise du tout... je vais faire des tests...ça pourrait eviter de killer et redemarrer l'explorer.exe .. mais le problème c'est que certain raccoucie de explorer.Exe reste disponible.. et si le clavier est disponible (normalement il ne doit pas l'être mais je me méfie ...)
graph100 a écrit :bon, j'ai testé sur mon xp virtuel, ca fonctionne.

J'ai ajouté un thread pour virer le taskgmr.exe, t'as de la chance que ce soit xp, parce que sur 7 c'est pas possible de cette manière.
très bonne idée :)
graph100 a écrit : ensuite, pour ton pb de lancer de explorer bizarre, bah en fait, comme tu attends que le programme soit quitter pour passer par le until vk ...
bah il faut juste maintenir tabulation en même temps que tu quittes la fenetre ;)
Non ça pas de problème ce que je n'arrive pas a faire (sur seven car je sais pas comment ça se comporte sur XP), c'est de redemarrer le bureau a la fin du programme.
et le fait de lancer explorer.exe via runprogram ne fait pas la même chose que lancer explorer.Exe via le gestionnaire de tache qui lui te redemarre le bureau. C'est le dernier truc qui me manque ! si quelqu'un a une idée
graph100 a écrit : Je te conseille quand même de mettre plus qu'une touche et de pas mettre Tab : surtout que tu as posté le code sur le fofo ^^
oui oui c'est déjà prévu le TAB c'est juste pour simplifié les tests ! :P

En tout cas un grand merci a vous tous ! ^_^

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 10:26
par Backup
en PB c'est facile de détourner les touches clavier !

ce code de Chris bloc souris et clavier

voir http://msdn.microsoft.com/en-us/library ... 85%29.aspx

exemple de code :

Code : Tout sélectionner

; Chris
If OpenWindow(0, 0, 0, 200, 40, "BlockInput", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    
    If CreateGadgetList(WindowID(0))
        TextGadget(0, 10, 10, 180, 20, "", #PB_Text_Center)
    EndIf
EndIf
 
top = 10
SetTimer_(WindowID(0), 1, 1000, 0)
SetGadgetText(0, RSet(Str(top), 2, "0") +" - Tout est bloqué")
BlockInput_(#True)
Repeat
    
    Select WaitWindowEvent()
        Case #PB_Event_CloseWindow : Quit = #True
            
        Case #WM_TIMER
            If top = 0
                BlockInput_(#False) : KillTimer_(WindowID(0), 1)
                SetGadgetText(0, RSet(Str(top), 2, "0") +" - Clavier et souris débloqués")
            Else
                SetGadgetText(0, RSet(Str(top), 2, "0") +" - Tout est bloqué")
            EndIf
            top - 1
            
    EndSelect
Until Quit 

sinon tu détourne le clavier avec les #VK **** ;)

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 10:34
par Thyphoon
Dobro a écrit :en PB c'est facile de détourner les touches clavier !

ce code de Chris bloc souris et clavier

voir http://msdn.microsoft.com/en-us/library ... 85%29.aspx

exemple de code :
***
sinon tu détourne le clavier avec les #VK **** ;)
très intéressant ça ! Merci Dobro :mrgreen:

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 11:53
par Ar-S
Dobro a écrit :en PB c'est facile de détourner les touches clavier !

ce code de Chris bloc souris et clavier

voir http://msdn.microsoft.com/en-us/library ... 85%29.aspx

exemple de code :

Code : Tout sélectionner

; Chris
If OpenWindow(0, 0, 0, 200, 40, "BlockInput", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    
    If CreateGadgetList(WindowID(0))
        TextGadget(0, 10, 10, 180, 20, "", #PB_Text_Center)
    EndIf
EndIf
 
top = 10
SetTimer_(WindowID(0), 1, 1000, 0)
SetGadgetText(0, RSet(Str(top), 2, "0") +" - Tout est bloqué")
BlockInput_(#True)
Repeat
    
    Select WaitWindowEvent()
        Case #PB_Event_CloseWindow : Quit = #True
            
        Case #WM_TIMER
            If top = 0
                BlockInput_(#False) : KillTimer_(WindowID(0), 1)
                SetGadgetText(0, RSet(Str(top), 2, "0") +" - Clavier et souris débloqués")
            Else
                SetGadgetText(0, RSet(Str(top), 2, "0") +" - Tout est bloqué")
            EndIf
            top - 1
            
    EndSelect
Until Quit 

sinon tu détourne le clavier avec les #VK **** ;)
Il faut je penes éviter BlockInput_ car Ctrl Alt Suppr réactive les fonctions.
The system will unblock input in the following cases: (...)
The user presses CTRL+ALT+DEL or the system invokes the Hard System Error modal message box
L'idée est pas mauvaise du tout... je vais faire des tests...ça pourrait eviter de killer et redemarrer l'explorer.exe .. mais le problème c'est que certain raccoucie de explorer.Exe reste disponible
Il ni a que la combinaison 'Windows + E' à bloquer.

J'avais fait un prog un peu dans le genre pour un contest (un crackme qui tuait le process Olly et qui stoppait le gest de tâche) mais je ne me souviens plus si c'était pour XP ou 7.. Je ne sais même pas si je l'ai encore, faut que je farfouille.

En combinant un peu toutes les idées ça devrait le faire.


---edit---

il serait aussi judicieux de désactiver windows + L car ceci à pour effet de tout minimiser. Ou peut-être plus simple, que le programme B surveille aussi la taille et l'état de la fenêtre A

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 12:23
par graph100
en fait, sur le test que j'ai fait sur le XP, explorer est relancé nickel !
Il n'y a pas de soucis pour le bureau

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 13:02
par dayvid
Pas mal tous ça :)

Dite au passage, j'aimerais bien savoir comment contourner leur truc dans les magasin :lol:

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 14:31
par Thyphoon
dayvid a écrit :Pas mal tous ça :)

Dite au passage, j'aimerais bien savoir comment contourner leur truc dans les magasin :lol:
Faudrait que je demande aux gamins qui viennent au centre pompidou. On arrive pas a les coincer et ils arrivent toujours a détourner le navigateur sécurisé qui permet de faire des recherches dans le catalogue de la bibliothèque chez nous !

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 14:32
par Thyphoon
graph100 a écrit :en fait, sur le test que j'ai fait sur le XP, explorer est relancé nickel !
Il n'y a pas de soucis pour le bureau
super donc il n'y a que sur Seven que marche pas bien... donc c'est pas trop grave! merci beaucoup :o)

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 14:34
par Thyphoon
Ar-S a écrit : Il ni a que la combinaison 'Windows + E' à bloquer.

il serait aussi judicieux de désactiver windows + L car ceci à pour effet de tout minimiser. Ou peut-être plus simple, que le programme B surveille aussi la taille et l'état de la fenêtre A
Oui et il il y a aussi windows + R qui permet de démarrer n'importe quoi en ligne de commande!

je vais voir ça !
merci :)

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 16:45
par graph100
non mais la il doit y avoir une fonction de window qui permet ça !
faut chercher dans les services et d'autres trucs compliqué dans le fin fond de window

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 16:56
par Thyphoon
graph100 a écrit :non mais la il doit y avoir une fonction de window qui permet ça !
faut chercher dans les services et d'autres trucs compliqué dans le fin fond de window
dans les registres il y a pas mal de choses ... là je dois finalisé un peu pour installé mon application des demain. Et normalement le clavier ne sera pas accessible.
Mais ce genre de demande reviendra surement avec une demande d'acces en plus au clavier et il faudra que je trouve..donc je vais surement continuer a développer cette petite application !

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 18:47
par case
code de luis sur le forum anglais
http://www.purebasic.fr/english/viewtop ... ndows+keys

Code : Tout sélectionner


; Raw example on how (hopefully) disable the two Windows keys, only when your window is active.

; My keyboard is not infected with the two keys mentioned above, so I tried with a
; on screen virtual keyboard and it seem to work.

; Maybe someone is interested in this... so I thought to post it.

; Windows NT 4.0 SP3 or greater
; http://msdn.microsoft.com/en-us/library/ee416808%28VS.85%29.aspx

EnableExplicit

Global G_hKeyboardHook
Global G_flgWindowActive

Enumeration
 #WIN_MAIN
 #EDITOR
EndEnumeration

CompilerIf Defined(KBDLLHOOKSTRUCT, #PB_Structure) = 0
 Structure KBDLLHOOKSTRUCT
    vkCode.i
    scanCode.i
    flags.i
    time.i
    dwExtraInfo.i
 EndStructure
CompilerEndIf

Procedure WindowsKeysHook(iCode, wParam, lParam)
 Protected *key.KBDLLHOOKSTRUCT = lparam

 If (iCode < 0 Or iCode <> #HC_ACTION) 
    ProcedureReturn CallNextHookEx_(G_hKeyboardHook, iCode, wParam, lParam)
 EndIf

 If wParam = #WM_KEYDOWN Or wParam = #WM_KEYUP
    If *key\vkCode = #VK_LWIN Or *key\vkCode = #VK_RWIN
        If G_flgWindowActive
            AddGadgetItem(#EDITOR, -1, "Blocking " + Str(*key\vkCode))
            ProcedureReturn 1
        Else
            AddGadgetItem(#EDITOR, -1, "Not blocked because window inactive or minimized.")
        EndIf
    EndIf                 
 EndIf

 ProcedureReturn CallNextHookEx_(G_hKeyboardHook, iCode, wParam, lParam)
EndProcedure

Procedure WinCallback(hWnd, uMsg, wParam, lParam)

 If uMsg = #WM_ACTIVATEAPP
    If wParam = 1
        G_flgWindowActive = 1
    Else
        G_flgWindowActive = 0
    EndIf
 EndIf

ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure

Procedure Main()
 Protected iEvent
 
 If OpenWindow(#WIN_MAIN, 10, 10, 640, 480, "Main Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget)     
    G_flgWindowActive = 1
   
    SetWindowCallback(@WinCallBack(), #WIN_MAIN)
 
    G_hKeyboardHook = SetWindowsHookEx_(#WH_KEYBOARD_LL, @WindowsKeysHook(), GetModuleHandle_(#Null), 0)
 
    EditorGadget(#EDITOR, 5,5,630,400)
     
    Repeat
        iEvent = WaitWindowEvent()
       
        Select iEvent           
            Case #PB_Event_Gadget
                Select EventGadget()
                EndSelect
        EndSelect       
    Until iEvent = #PB_Event_CloseWindow
 
    UnhookWindowsHookEx_(G_hKeyboardHook)       
 EndIf
 
EndProcedure


Main()

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 20:00
par Backup
malheureusement ceci ne marche pas :

Code : Tout sélectionner

If *key\vkCode = #VK_MENU Or *key\vkCode = #VK_TAB


impossible d'empecher un ALT+TAB

Re: Cacher le bureau de widows XP / Seven

Publié : dim. 18/mars/2012 21:02
par graph100
pour le alt-tab voir le lien ci-après : trouvé grâce à google -_-