Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: rembolso en 18 Mayo 2018, 04:35 am



Título: ayuda, copiar texto que no se puede copiar ?
Publicado por: rembolso en 18 Mayo 2018, 04:35 am
buenos dias o buenas noches. a lo mejor es confuso el titulo.
se me plantea la siguiente situación, vieron que por ahi hay webs , o software o procesadores de texto o lo que sea , donde se encuentra una porción de texto lo cual se puede seleccionar pero no copiar( ni con control c ni con clic derecho copiar), alguien me puede ayudar o facilitar algún ejemplo de código para copiar ese texto al Clipboard
muchas gracias por leer y disculpen las molestias.


Título: Re: ayuda, copiar texto que no se puede copiar ?
Publicado por: engel lex en 18 Mayo 2018, 07:46 am
puedes verlo en el codigo fuente o puedes desactivar javascript


Título: Re: ayuda, copiar texto que no se puede copiar ?
Publicado por: rembolso en 19 Mayo 2018, 19:01 pm
"puedes verlo en el codigo fuente o puedes desactivar javascript"
i pero en ese es el caso de las webs .
en caso de procesadores de texto, o en otros software no se puede, solo el texto se puede seleccionar pero no copiar.


Título: Re: ayuda, copiar texto que no se puede copiar ?
Publicado por: Eleкtro en 19 Mayo 2018, 19:27 pm
en caso de procesadores de texto, o en otros software no se puede, solo el texto se puede seleccionar pero no copiar.

Debes enumerar las ventanas de la aplicación (con la función EnumWindows / EnumChildWindows / EnumThreadWindows) para identificar la ventana que contiene el texto que desees copiar, con ello obienes el controlador de dicha ventana (o window handle), y entonces le puedes enviar el mensaje de ventana WM_GETTEXT mediante las funciones de mensajería de ventanas ( SendMessage, SendMessageTimeout o PostMessege) para obtener el texto, y por último utilizar la función (OpenClipboard +)SetClipboardData para establecer el texto del portapapeles de Windows.

Podrías reemplazar los dos últimos pasos enviando diréctamente el mensaje de ventana WM_COPY (en lugar de WM_GETTEXT + llamar a la función SetClipboardData).

Saludos.