Login
`
Templates, Tools and Utilities
|
||
Add a comment to an Icetips ArticlePlease add your comments to this article.
Please note that you must provide both a name and a valid email address in order
for us to publish your comment. Comments are moderated and are not visible until they have been approved. Spam is never approved!
Back to article list Search Articles Add Comment Printer friendly Direct link Windows API: Set application to be the only desktop application 2005-04-01 -- Kc Chin Newsgroups: softvelocity.public.clarion6
From my old junk. The Main Menu's "Embed at AfterWindowOpening", some of
the remarked line worked. I forgotten why I remarked it.
Ah!. Now I remember. The Ctrl+Alt+Del will be disable if you unremark the
it line.
Cheers and good day to you.
KC Chin
Embed at Global Map
MODULE('Windows API')
SystemParametersInfo(Long,Long,Long,Long),|
Long,Pascal,Raw,Name('SystemParametersInfoA'),proc
RegisterHotKey(LONG,SIGNED,UNSIGNED,UNSIGNED),BOOL,PASCAL,proc
GlobalAddAtom(*CSTRING),LONG,PASCAL,RAW,NAME('GlobalAddAtomA')
END
Embed at After Global Includes
SPI_SCREENSAVERRUNNING EQUATE(97)
MOD_ALT EQUATE(0001h)
MOD_CONTROL EQUATE(0002h)
MOD_SHIFT EQUATE(0004h)
Embed at ProgramSetup
! Control USER exit
alias(CtrlMouseCenter, CtrlPause) ! CtrlMouse/CtrlPause
alias(CtrlAltMouseCenter, CtrlPause) ! CtrlAltMouse/CtrlAltPause
alias(CtrlShiftMouseCenter, CtrlPause) ! CtrlShiftMouse/CtrlShiftPause
alias(1795, CtrlPause) ! CtrlShiftAltMouse
! (**no equate in keycodes.clw **)
! /CtrlShiftAltPause
alias(AltF4,CtrlPause)
alias(CtrlF4,CtrlPause)
alias(CtrlShiftF4,CtrlPause)
! alias(AltEsc,CtrlPause)
! alias(CtrlEsc,CtrlPause)
alias(ShiftEsc,CtrlPause)
! alias(CtrlShiftEsc,CtrlPause)
alias(CtrlAltEsc,CtrlPause)
alias(1819, CtrlPause) ! (**no equate in keycodes.clw
**)/CtrlShiftAltEsc
! alias(AltTab,CtrlPause)
alias(CtrlAltF1,CtrlPause)
-------------------------
Main Menu
Embed at DataSectionBefore Window
VK_ESC BYTE(1BH)
VK_TAB BYTE(09H) !TAB key
!VK_F1 BYTE(70H)
!VK_F4 BYTE(73H)
!VK_PAUSE BYTE(13H)
!VK_DELETE BYTE(2Eh)!EQUATE(46) !2eh
AltEscAtom CSTRING('AltEscAtom ')
CtrlEscAtom CSTRING('CtrlEscAtom ')
CtrlShiftEscAtom CSTRING('CtrlShiftEscAtom ')
AltTabAtom CSTRING('AltTabAtom ')
!AltF4Atom CSTRING('AltF4Atom ')
!ShiftEscAtom CSTRING('ShiftEscAtom')
!CtrlF4Atom CSTRING('CtrlF4Atom ')
!CtrlShiftF4Atom CSTRING('CtrlShiftF4Atom ')
Embed at Event:OpenWindow
WinOnTop() ! from Capesoft WinEvent
Embed at AfterWindowOpening
AppFrame{Prop:Max} = 0
myID# = GlobalAddAtom(AltEscAtom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_ALT,VK_ESC) ! alt esc
!message('AltEsc: ' & myID# &'/A#= ' & A#)
myID# = GlobalAddAtom(CtrlEscAtom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_CONTROL,VK_ESC)! ctrl Esc
!message('CtrlEscAtom: ' & myID# &'/A#= ' & A#)
myID# = GlobalAddAtom(CtrlShiftEscAtom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_CONTROL+MOD_SHIFT,VK_ESC)! ctrl shift esc
!message('CtrlShiftEscAtom: ' & myID# &'/A#= ' & A#)
myID# = GlobalAddAtom(AltTabAtom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_ALT,VK_TAB) ! alt tab
!message('AltTabAtom: ' & myID# &'/A#= ' & A#)
!myID# = GlobalAddAtom(AltF4Atom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_ALT,VK_F4) ! alt f4
!message('AltF4Atom: ' & myID# &'/A#= ' & A#)
!myID# = GlobalAddAtom(ShiftEscAtom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_SHIFT,VK_ESC) ! shift esc
!message('ShiftEscAtom: ' & myID# &'/A#= ' & A#)
!myID# = GlobalAddAtom(CtrlF4Atom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_CONTROL,VK_F4)! ctrl f4
!message('CtrlF4Atom: ' & myID# &'/A#= ' & A#)
!myID# = GlobalAddAtom(CtrlShiftF4Atom)
A# = RegisterHotKey(0{PROP:Handle},myID#,MOD_CONTROL+MOD_SHIFT,VK_F4)! ctrl shift f4
!message('CtrlShiftF4Atom: ' & myID# &'/A#= ' & A#)
!- my test -
!CtrlAltDelID# = GlobalAddAtom(CtrlAltDelAtom)
!B# = RegisterHotKey(0{PROP:Handle},CtrlAltDelID#,1h+2h,VK_DELETE)
!VK_DELETE (2E)DEL key !MOD_CONTROL+MOD_ALT
!message('CtrlAltDelID#: ' & CtrlAltDelID# &'/B#= ' & B#)
! only win 9x
X# = SystemParametersInfo(SPI_SCREENSAVERRUNNING,True,0,0)
!X# 0 = FAIL NONZERO=OK True=Disable CtrlAltDel False=Enable
!MESSAGE(X#)
!SystemParametersInfo(SPI_SCREENSAVERRUNNING,FALSE,0,0)
Today is November 23, 2024, 3:41 am This article has been viewed 35217 times. Google search has resulted in 101 hits on this article since January 25, 2004.
|
|