Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - copiare nella clipboard
Forum - C# / VB.NET - copiare nella clipboard

Avatar
rossiemme (Normal User)
Newbie


Messaggi: 5
Iscritto: 18/06/2017

Segnala al moderatore
Postato alle 15:17
Lunedì, 19/06/2017
Buon giorno a tutti, sono da poco qui e non ho esperienza di blog, per cui aiutatemi a capire come funziona.
Il problema che vorrei risolvere è di effettuare una selezione da codice sulla schermata e copiarne il contenuto alfanumerico nella clipboard, il testo alfanumerico si trova in una parte definita dello schermo, e quindi appartiene a un file generico di qualunque tipo ma pur sempre selezionabile manualmente.
In pratica vorrei fare da codice quello che si può fare agevolmente quando si copia qualcosa, si seleziona un rettangolo e poi col menu si preme "copia", per fare questo vorrei usare le API per gestire il mouse perché sono più generiche, invece non vorrei usare la classe cursor di VB.NET, anche perché VB.NET vorrei impararlo ma non lo conosco ancora

grazie amici

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 15:33
Lunedì, 19/06/2017
Il codice di cui parli è un testo selezionabile o una immagine?

A cosa serve tutto ciò esattamente?

Comunque non ha senso usare le API quando puoi usare le potenzialità del Framework.
La classe Cursor non c'entra nulla. Puoi utilizzare la classe Graphics e il metodo CopyFromScreen, vedi

https://msdn.microsoft.com/it-it/library/system.drawing.gra ...


P.S. Questo è un forum non un blog


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
rossiemme (Normal User)
Newbie


Messaggi: 5
Iscritto: 18/06/2017

Segnala al moderatore
Postato alle 15:47
Lunedì, 19/06/2017
Grazie delle precisazioni, forum e non blog :d
si tratta di caratteri alfanumerici come avevo scritto.
il sorgente di queste tabelle è un file html che non può essere letto direttamente perché i dati sono criptati, quindi devo selezionare le tabelle e copiarle, voglio rendere automatico il procedimento

preferisco le api perché mi permettono di usarle anche in vb6 oppure in c, mentre non conosco altri linguaggi (ahimè :d)

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 17:47
Lunedì, 19/06/2017
Ma dove sono queste tabelle? Esattamente, di che si tratta?

Se sono criptate in partenza vuol dire che non si vuole che si faccia quello che tu vuoi fare ...

E io, per mia regola, se non vedo chiaro nelle questioni, non me ne interesso ...

Ultima modifica effettuata da nessuno il 19/06/2017 alle 17:53


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
rossiemme (Normal User)
Newbie


Messaggi: 5
Iscritto: 18/06/2017

Segnala al moderatore
Postato alle 22:41
Lunedì, 19/06/2017
sono le tabelle delle operazioni che io faccio e che non mi va di scriverle manualmente visto che si possono copiare.. non credo sia proibito o pericoloso tenere copia di ciò che si fa, ma hai ragione, lo diceva anche mio nonno che è meglio aver paura piuttosto che buscarne

PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 9:21
Martedì, 20/06/2017
Testo quotato

Postato originariamente da rossiemme:

sono le tabelle delle operazioni che io faccio e che non mi va di scriverle manualmente visto che si possono copiare.. non credo sia proibito o pericoloso tenere copia di ciò che si fa, ma hai ragione, lo diceva anche mio nonno che è meglio aver paura piuttosto che buscarne



Se le tabelle le hai fatte tu, non dovresti avere nessun problema nel copiare il contenuto.
Semplicemente, usa il componente WebClient, leggi il contenuto della pagina web in una stringa
e gli fai eseguire tramite javascript lo stesso comando che utilizzi in html per decriptare il contenuto.
Una volta ottenuto il sorgente completo html, puoi navigare tra i vari elementi
come div,table ecc. ecc. direttamente dal webclient Document.

Possiamo darti una mano, ma se non vediamo nulla su come poter aiutare non possiamo più di questo.
Generalmente si allega al topic un frammento di codice spiegando dettagliatamente cosa si vuole fare
e che problema si ha.
Non è che possiamo dare soluzioni alla cieca




PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:26
Martedì, 20/06/2017
Testo quotato

Postato originariamente da rossiemme:

sono le tabelle delle operazioni che io faccio e che non mi va di scriverle manualmente visto che si possono copiare.. non credo sia proibito o pericoloso tenere copia di ciò che si fa, ma hai ragione, lo diceva anche mio nonno che è meglio aver paura piuttosto che buscarne



Operazioni? Quali operazioni?

E qualsiasi cosa sia, se la fai tu, la scrivi dove vuoi, non devi "rileggerla" con la clipboard ...

Tutta la tua "storia" non ha senso ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
rossiemme (Normal User)
Newbie


Messaggi: 5
Iscritto: 18/06/2017

Segnala al moderatore
Postato alle 9:37
Domenica, 25/06/2017
Grazie della disponibilità, vi spiego cosa vorrei fare:
si tratta di una piattaforma per il trading on-line, in pratica occorre accedere con le credenziali al sito, così si accede alla piattaforma dalla quale si può operare sul proprio conto.
Nella stessa appare la lista, lo storico delle operazioni fatte in precedenza.
Quello che vorrei fare è copiare queste operazioni in una stringa di testo per poterle elaborare in tempo reale.

ho provato ad usare questo codice per accedere al mio account:

    Set tool = New MSXML2.XMLHTTP
    tool.open "GET", htmPage, False
    tool.send
    inData = tool.responseText


ma non funziona, ovvero funziona benissimo per raccogliere i dati da un sito, ma non funziona se il sito richiede delle credenziali. Quindi ho pensato di automatizzare quello che si può fare manulamente, ovvero il classico copia-incolla.....

    SetCursorPos 500, 300   'posiziono il cursore
    mouse_event 2, 0, 0, cButtons, dwExtraInfo  'pulsante sx down
    
    Dim i As Integer
    
    For i = 1 To 10
        mouse_event 1, i, i, cButtons, dwExtraInfo  'sposto il cursore al punto finale
        DoEvents
        Sleep 10
    Next i
    mouse_event 4, 0, 0, cButtons, dwExtraInfo  'pulsante sx up
    DoEvents
    Sleep 10
    mouse_event 1, -2, -2, cButtons, dwExtraInfo  'rientro dentro la selezione
    DoEvents
    Sleep 10
    mouse_event 8, 0, 0, cButtons, dwExtraInfo  'pulsante dx dw
    DoEvents
    Sleep 10
    mouse_event 10, 0, 0, cButtons, dwExtraInfo  'pulsante dx up
    Sleep 1000


Questo codice non funziona perché quando il mouse si sposta perde il pulsante dwn
inoltre mi mancano le istruzione per depositare il copia incolla nella clipBoard
    


Grazie nuovamente per la disponibilità

rossiemme

PM Quote