Pour ceux qui travaillent sur des applications 'contrôlées' de Kiosques. Voici quelques suggestions. 1.Comment
faire disparaître le bouton « Start » pour empêcher l’utilisateur de
fouiller trop loin dans l’ordinateur. Attention! Ce code détruit le
bouton Start, aucune possibilité de le faire revenir, a moins de
repartir le PC. 2.Comment cacher la barre de tâches de Windows. Et la faire revenir.
Code source :
&& 1. Comment détruire le bouton 'Start'
DECLARELONG FindWindow IN"user32"STRING lpClassName, STRING lpWindowName DECLARELONG SendMessage IN"user32"LONGhWnd, LONG wMsg, LONG wParam, LONG lParam DECLARELONG FindWindowEx IN"user32"LONG hWnd1, LONG hWnd2, STRING lpsz1, STRING lpsz2
#DEFINE WM_CLOSE 0x10
SendMessage(FindWindowEx(FindWindow("Shell_TrayWnd", ""), 0x0, "Button", .NULL.), WM_CLOSE, 0, 0)
&& 2 Comment rendre le bouton "Start" disable
DeclareINTEGER FindWindowEx IN user32.dll ; Long, Long, string, String
DeclareINTEGER EnableWindow IN user32.dllLong, Long
PROCEDURE EnableStartMenuButton(liEnable) * Don't forget to re-enable it ! LOCAL lHwnd
lHwnd = FindWindowEx(0, 0, "Shell_TrayWnd", .NULL.)
lHwnd = FindWindowEx(lHwnd, 0, "Button", .NULL.)
=EnableWindow(lHwnd, liEnable)
&& 3. Comment cacher la barre de tâches de Windows
ifMESSAGEBOX("Click OK to hide the taskbar",1)=1
HideTaskBar() endif
FUNCTION HideTaskBar DECLARELONG FindWindow IN"user32"STRING lpClassName, STRING lpWindowName DECLARELONG SetWindowPos IN"user32"LONGhWnd, LONG hWndInsertAfter, LONG x, LONG Y, LONG cx, LONG cy, LONG wFlags
#DEFINE WINDOWHIDE 0x80
#DEFINE WINDOWSHOW 0x40 LOCAL lnHandle
lnHandle = FindWindow("Shell_TrayWnd", "")
SetWindowPos(lnHandle, 0, 0, 0, 0, 0, WINDOWHIDE) ENDFUNC
&& Pour la faire revenir
SHOWTASKBAR()
FUNCTION ShowTaskBar DECLARELONG FindWindow IN"user32"STRING lpClassName, STRING lpWindowName DECLARELONG SetWindowPos IN"user32"LONGhWnd, LONG hWndInsertAfter, LONG x, LONG Y, LONG cx, LONG cy, LONG wFlags
#DEFINE WINDOWHIDE 0x80
#DEFINE WINDOWSHOW 0x40 LOCAL lnHandle
lnHandle = FindWindow("Shell_TrayWnd", "")
SetWindowPos(lnHandle, 0, 0, 0, 0, 0, WINDOWSHOW) ENDFUNC
Bravo Mike,
c'est exactement ce qui me fallait , afin d'avoir le plus de securité possible.!
Olivier