none
Bloquear PrintScreen RRS feed

  • Pergunta

  • Olá

    Gente preciso bloquear a função printScrren. Eu poderia bloquear a tecla 'Print Screen',  mas e se o usuário alterar a tecla do print para outra? então meu método não funcionaria mais. Pensei em usar um timer e limpar o print o tempo todo (usando Clipboard.Clear) em que o software estiver aberto, que parece funcionar, só que o OneDrive ainda salva a tela.

    Desde já agradeço.


    • Editado Eliseu5 quarta-feira, 1 de fevereiro de 2017 11:01
    quarta-feira, 1 de fevereiro de 2017 10:53

Respostas

  • Olá Eliseu,
    No caso dele mudar a tecla de print, você pode pegar por aqui:
    http://stackoverflow.com/questions/1191479/how-do-i-capture-the-print-screen-key

    No entanto, bloquear efetivamente o print screen é tecnicamente impossível(no entanto,você consegue dificultar da forma que você está imaginando, junto com a implementação acima),ele pode acabar usando um outro software pra capturar a printscreen do seu software(como por exemplo,gravar a tela).
    só um adendo, usar o Clipboard.Clear em timer pode atrapalhar a usabilidade do seu software, caso o usuário precise/queira copiar e colar coisas, como por exemplo, em um textbox de cadastro.

    Abs

    --
    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta
    quarta-feira, 1 de fevereiro de 2017 12:21

Todas as Respostas

  • Olá Eliseu,
    No caso dele mudar a tecla de print, você pode pegar por aqui:
    http://stackoverflow.com/questions/1191479/how-do-i-capture-the-print-screen-key

    No entanto, bloquear efetivamente o print screen é tecnicamente impossível(no entanto,você consegue dificultar da forma que você está imaginando, junto com a implementação acima),ele pode acabar usando um outro software pra capturar a printscreen do seu software(como por exemplo,gravar a tela).
    só um adendo, usar o Clipboard.Clear em timer pode atrapalhar a usabilidade do seu software, caso o usuário precise/queira copiar e colar coisas, como por exemplo, em um textbox de cadastro.

    Abs

    --
    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta
    quarta-feira, 1 de fevereiro de 2017 12:21
  • Olá Rodrigo, 



    Agradeço por sua ajuda!

    1: Não entendi como poso aplicar o código sugerido no link. Quando queremos fazer uma copia da tela clicamos na tecla PrintScrren (PrtSc), então eu poderia simplesmente bloqueá-la usando "e.SuppressKeyPress = True" no evento KeyDown. Mas e se o usuário for nas configurações do computador e alterar a tecla, exemplo, fazer copia da tela quando clica "Ctrl + n" então minha proteção não será mais válida e irá falhar;

    2: Referente ao Clipboard.clear realmente você tem razão, pode atrapalhar mesmo então não vou mais fazer isso;

    3: Mesmo bloqueando o printscreen o windows salva no OneDrive:


    quarta-feira, 1 de fevereiro de 2017 17:54
  • Bloquear a tecla é possível pelo jeito que você falou. Mas creio que você quer impedir, de todas as maneiras possíveis, que alguém print a tela. Existem inúmeras ferramentas de captura de tela. Isso é impossível.
    quinta-feira, 2 de fevereiro de 2017 18:46
  • Na pior das hipóteses o usuário pode tirar o smartphone do bolso e bater uma foto da tela. Mandar por WhatsApp, ou Messenger. Por isso, qualquer técnica para bloquear 'Print' não pode ser totalmente efetiva.


    Att; Rafael

    quinta-feira, 2 de fevereiro de 2017 18:54