Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   como deshabilitar el boton print screen (https://www.clubdelphi.com/foros/showthread.php?t=63238)

lenia310581 04-02-2009 20:02:22

como deshabilitar el boton print screen
 
necesito esto urgente!! y ademas necesitaria saber como puedo hacer para proteger un fichero ppt contra la copia y escritura

luisgutierrezb 04-02-2009 21:11:53

porque no mejor usas un PDF que tiene opciones para protegerlo contra impresion, modificacion etc, en cuanto a lo del print screen pues no se, pero de todas formas hay programas para capturar pantallas, en todo caso mejor usa marca de agua, no se protegen pero al menos quien lo copie no podra presentarlo como suyo

escafandra 05-02-2009 01:34:11

El tema se ha tratado en el foro, mira esto.

Saludos.:cool:

lenia310581 05-02-2009 16:19:04

muchas gracias
 
muchas gracias por sus comentarios, me gustaria saber si pudiera ver este codigo en C++ porque soy nueva en el asunto.

escafandra 05-02-2009 23:31:33

Código:

HHOOK WHookKeyboard = 0;
 
//---------------------------------------------------------------------------
bool Hook()
{
  if(WHookKeyboard == 0) {
    WHookKeyboard = SetWindowsHookEx(WH_KEYBOARD_LL, reinterpret_cast<HOOKPROC>(KeyboardHookCallBack), HInstance, 0);
    // Antigua y clásica forma de hacer el casting
    // WHookKeyboard = SetWindowsHookEx(WH_KEYBOARD_LL, (HOOKPROC)KeyboardHookCallBack, HInstance, 0);
  }

  return (bool)WHookKeyboard;
}
 
//---------------------------------------------------------------------------
void UnHook()
{
  UnhookWindowsHookEx(WHookKeyboard);
  WHookKeyboard = 0;
}
 
//---------------------------------------------------------------------------
LRESULT CALLBACK KeyboardHookCallBack(int Code, WPARAM wParam, LPARAM lParam)
{
  if(Code == HC_ACTION){
      // PKBDLLHOOKSTRUCT hs = (PKBDLLHOOKSTRUCT)lParam;
      PKBDLLHOOKSTRUCT hs = reinterpret_cast<PKBDLLHOOKSTRUCT>(lParam);
      if (hs->vkCode == VK_SNAPSHOT || hs->vkCode == VK_PRINT){
          return -1; // Devolvemos sin permitir el procesado de print screen
      }
  }
   
  // Permitimos el proceso del resto del teclado.
  return CallNextHookEx(WHookKeyboard, Code, wParam, lParam);
}

Saludos. :cool:


La franja horaria es GMT +2. Ahora son las 20:52:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi