SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Maxier en Viernes 6 de Diciembre de 2002, 17:42

Título: Re: Que no se vea mi programa cuando apreto ctrl + alt + del
Publicado por: Maxier en Viernes 6 de Diciembre de 2002, 17:42
Hola Sr AMigotes

Le hago una pregunta, alguien sabe como hacer que mi programa no se vea cuando apreto ctrl + alt+ del ? si deshabilitar dichas teclas ?
lo que quiero es q el usuario no tenga la posibilidad de cerrarlo.

gracias de antemano

slds

Maxier
Título: Re: Que no se vea mi programa cuando apreto ctrl + alt + del
Publicado por: m00g en Viernes 6 de Diciembre de 2002, 21:39
Bueno... encontre esto en
http://www.canalvisualbasic.net/ (http://www.canalvisualbasic.net/)

Bloquear el Boton Inicio, Crtl + Tab y Ctrl + Alt + Supr

Declarar en un Módulo lo siguiente:

Public Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" _
(ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long

(Ojo, toda esta declaracion debe estar en una sola linea!!)

En el Evento Click del Form1 colocar lo siguiente:

Sub Form_Click()
     Dim blnOld as Boolean
    If MsgBox ("Desea Bloquear ahora?", vbInformation + vbYesNo, "Bloqueo") = vbYes then
        SystemParametersInfo 97&, True, blnOld, 0&
    Else
        SystemParametersInfo 97&, False, blnOld, 0&
    End If
End Sub

Espero que te sirva....
.:Gaby:.;)
Título: Re: Que no se vea mi programa cuando apreto ctrl + alt + del
Publicado por: javierbalk en Sábado 7 de Diciembre de 2002, 01:40
Hola Maxier:

Además del código que te pasó .:Gaby:., que sirve para bloquear las teclas, te paso este otro para que tu aplicación no aparezca en la lista:

'**************************
Option Explicit

Private Declare Function RegisterServiceProcess Lib "kernel32" (ByVal dwProcessId As Long, ByVal dwType As Long) As Long
Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long
Private Const RSP_SIMPLE_SERVICE = 1

Private Sub Form_Load()
    Call RSP(GetCurrentProcessId, RSP_SIMPLE_SERVICE)
End Sub

Private Function RSP(ByVal dwProcessId As Long, ByVal dwType As Long) As Long
    On Error Resume Next
    RSP = RegisterServiceProcess(dwProcessId, dwType)
End Function
'**************************

Nota: esto funciona solamente en Windows 95/98/ME pero no en NT/2000/XP, la forma de hacerlo para las dos plataformas no la sé (si se puede). Me parece que lo bloquear las teclas también anda sólo en 95/98/ME.

Recuerdo haber visto un proyecto de ejemplo para bloquear las teclas en Win NT/2000/XP en http://www.pscode.com/vb (http://www.pscode.com/vb) si te interesa tendrías que buscarlo.

Saludos,
Javier
Título: Que no se vea mi programa cuando apreto ctrl + alt + del
Publicado por: Maxier en Sábado 7 de Diciembre de 2002, 16:08
Gaby: gracias por tu respuesta y codigo,ya esa api la tenia de todas maneras , pero igual gracias.

Javi: eso era lo que me faltaba, muchas y gracias !!!! lo puebo y te aviso:)