frafau73 (Normal User)
Newbie
Messaggi: 1
Iscritto: 30/05/2017
|
Questo topic è stato chiuso dal moderatore Salve a tutti,
sono nuovo del forum e sono un "programmatore" alle prime armi.
Ho la necessità di creare un programma che legga il contenuto di un file di testo e ne scriva il contenuto in un altro programma (che potrebbe essere la finestra di google, una pagina di word o qualsiasi altro programma con il cursore che lampeggia nel momento in cui si genera il file).
Per quanto riguarda la lettura del contenuto di un file non ho problemi, ma poi non so come fare per poterne scrivere il contenuto nel programma che in quel momento è "attivo"
|
|
Roby94 (Member)
Guru
Messaggi: 1170
Iscritto: 28/12/2009
|
Intanto abbandonando il visual basic 6 e passando ad un linguaggio di questo decennio; seriamente il prossimo anno si festeggia il primo decennio da quando VB6 è ufficialmente morto.
|
|
lumo (Member)
Expert
Messaggi: 449
Iscritto: 18/04/2010
|
Aggiungo che la richiesta è piuttosto difficile da attuare anche per un programmatore non alle prime armi, bisogna vedere se le api Windows permettono di fare questa cosa.
A cosa ti servirebbe? Forse ci sono altri modi.
|
|
AldoBaldo (Member)
Guru
Messaggi: 700
Iscritto: 08/01/2015
|
Prova a vedere se (in Windows) la funzione keybd_event() fa al caso tuo.
La documentazione dice qualcosa tipo: "The keybd_event function synthesizes a keystroke. The system can use such a synthesized keystroke to generate a WM_KEYUP or WM_KEYDOWN message. The keyboard driver's interrupt handler calls the keybd_event function."
In altre parole, ogni volta che invochi keybd_event() è come se stessi effettivamente premendo un tasto sulla tastiera. Questo farebbe pensare che se nella finestra attiva nel momento in cui viene chiamato keybd_event() è presente un campo di inserimento testo, in quel campo viene effettivamente inserito del testo.
Ho provato or ora a fare un programmino di test che chiama 10000 volte keybd_event(). Ebbene, se avvio il programma e passo rapidamente al NotePad (il programma di editing di testo) effettivamente vedo che in NotePad iniziano a essere inserite in rapida sequenza una caterva di "A", come se un folle premesse a raffica il tasto della tastiera. Cambiando programma (ad esempio passando al Writer di OpenOffice) le "A" appaiono nel nuovo programma.
Ovvio che devi essere veloce, perché 10000 inserimenti avvengono relativamente in un lampo. In alternativa, puoi provare con un milione di "A", o anche più.
Codice sorgente - presumibilmente C++ |
#include <windows.h> int main() { int i; for( i=0; i<10000; ++i ) keybd_event( 'A', 0, 0, 0 ); return 0; }
|
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti. |
|
AldoBaldo (Member)
Guru
Messaggi: 700
Iscritto: 08/01/2015
|
P.S. Ho ancora una copia di VisualBasic 5. Non l'ho MAI usata, però la conservo come una reliquia. Temo possa trattarsi di una forma di feticismo...
Ultima modifica effettuata da AldoBaldo il 30/05/2017 alle 22:27
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti. |
|
nessuno (Normal User)
Guru^2
Messaggi: 6404
Iscritto: 03/01/2010
|
Effettivamente "a cosa serve" prendere un file e copiarlo "dove capita"?
Forse un malware o un keylogger (o applicazione simile ...) ...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
Ultimo (Member)
Guru
Messaggi: 877
Iscritto: 22/05/2010
|
Postato originariamente da frafau73:
Salve a tutti,
sono nuovo del forum e sono un "programmatore" alle prime armi.
Ho la necessità di creare un programma che legga il contenuto di un file di testo e ne scriva il contenuto in un altro programma (che potrebbe essere la finestra di google, una pagina di word o qualsiasi altro programma con il cursore che lampeggia nel momento in cui si genera il file).
Per quanto riguarda la lettura del contenuto di un file non ho problemi, ma poi non so come fare per poterne scrivere il contenuto nel programma che in quel momento è "attivo" |
Ma possibile che tutti pensano di poter fare l'hacker del secolo?
If ok Then GOTO Avanza else GOTO Inizia
|
|
pierotofy (Admin)
Guru^2
Messaggi: 6230
Iscritto: 04/12/2003
|
Come ha detto aldobaldo, usa keybd_event.
|
|
rossiemme (Normal User)
Rookie
Messaggi: 24
Iscritto: 18/06/2017
|
Buon giorno a tutti, anche io sono nuovo in questo forum, mi sono appena iscritto
ho un problema, vorrei utilizzare la classe cursor per poter copiare da codice una porzione dello schermo di windows, quindi impostare l'inizio e la fine della selezione e simulare la premuta del tasto copy in modo da scaricare il contenuto della selezione nella clipboard.. qualcuno può indicarmi degli esempi già scritti? magari in vb6, perché ancora non ho avuto il coraggio di abbandonarlo
Grazie amici, sono felice di partecipare a un blog così interessante
|
|