Visualizzazione risultati 1 fino 13 di 13

Discussione: integrazione con il browser

  1. #1
    Guest

    Predefinito

    vorrei scrivere un programma che si attiva quando il computer viene collegato a internet: si puo'?
    un altro cosa: come si integra un prog col browser, tipo che rileva quando una pag e' stata acricata, quando l'utente clicca un pulsante ecc? bisogna fare per forza un plugin? se si', come si fa? (tutorial cercasi.. )

  2. #2
    express non è connesso AlterVistiano
    Data registrazione
    08-08-2003
    Residenza
    Cagliari/Pisa
    Messaggi
    799

    Predefinito

    tutto si puo' fare...
    per attivare un programma appena si connette ad internet devi utilizzare un altro programma che controlla lo status della connessione ad internet oppure piu' elegantemente chiedere a windows di farlo per te.
    per fare invece un programma che interagisca con gli eventi di un altro (cioe' un virus) non credo sia sufficiente scrivere un plugin. se lo e'... cambia browser :-)
    http://express.altervista.org
    Dato un lavoro, si possono scegliere due sole delle seguenti caratteristiche: veloce, economico, di qualità.
    Così capita che se un lavoro è veloce ed economico non sarà di qualità; se è veloce e di qualità non sarà economico; se è economico e di qualità non sarà veloce.

  3. #3
    Guest

    Predefinito

    beh controllare lo stato di connessione di continuo non e' granche'... pensavo appunto "chiedere a windows di farlo per te", ma come? ualche chiave di registro o altro?

    cmq un plugin e' fatto apposta per interagire con un browser uindi e' ovvio che ne intercetta gli eventi, non per questo e' un virus! cmq io non intendevo un plugin di quelli che si scaricano per interpretare mime types agiuntivi, ma un plugin quale puo' essere la barra di download accelerator, popupcop, google toolbar et similia. idee su come si fa?

  4. #4
    Guest

    Predefinito

    Interfacciati con le api di sistema e cerca su http://msdn.microsoft.com quella che fa per te...

  5. #5
    express non è connesso AlterVistiano
    Data registrazione
    08-08-2003
    Residenza
    Cagliari/Pisa
    Messaggi
    799

    Predefinito

    io credevo dovesse interagire con i bottoni del browser... tutti i plugin che hai citato aggiungono delle funzionalita' attraverso l'aggiunta di 'bottoni' (sono due cose ben diverse!).

    cmq per la realizzazione nel dettaglio prova a chiedere a CoD... lui ne dovrebbe sapere qcosa piu' in particolare.
    http://express.altervista.org
    Dato un lavoro, si possono scegliere due sole delle seguenti caratteristiche: veloce, economico, di qualità.
    Così capita che se un lavoro è veloce ed economico non sarà di qualità; se è veloce e di qualità non sarà economico; se è economico e di qualità non sarà veloce.

  6. #6
    Guest

    Predefinito

    Qualcuno ha detto CoD?

    A dire il vero non ho molta esperienza in questo campo (grazie per la fiducia Express ), ma provo a rispondere lo stesso.

    Dunque dunque... se ho capito bene vuoi fare un programma che si attivi al collegamento internet...
    Direi che numerone ti ha gia' detto tutto: API di windows.

    Alternativamente puoi provare a fare un bell'hook di sistema (con c++).

    Bibliografia sull'argomento la trovi qui.

    Se non vuoi creare una dll esterna c'e' un piccolo trucchetto svelato di recente. E' utilissimo quando si fanno KeyLoggers o virus in generale. Lo trovi descritto qui

    Per inserire un pulsante nel browser... azz non l'ho mai fatto.
    Da quello che so bastano un paio di chiavi di registro sotto "Extensions" in hkcu/software/microsoft/windows/internet explorer/ , almeno sotto win98.

    Il mio consiglio e' di provare due strade:
    1) ti leggi tutto msdn di microsoft (auguri). Magari e' spiegato bene come si fa
    2) ti installi una "extension" per IE e poi ti leggi il registro e ti decompili il plugin.

    Tutto questo ovviamente se per browser sottointendevi IE e per sistema windows.

    Con altri (come firefox) credo sia molto piu' semplice.

  7. #7
    Guest

    Predefinito

    grazie dell'aiuto e dei links :D
    all'hook di sistema ci avevo pensato, ma lho scartato subito perche' non vorrei impicciarmi in ste cose :D
    alla fin fine l'idea era di fare un semplice contatore di tempo di connessione, ma volevo evitare di metterlo li' come una sanguisuga a controllare ogni 2 sec se una connessione e' attiva...

    poi per quanto riguarda il plugin l'msdn mi ha sempre creato forti mal di testa... :P
    cmq non e' importante il browser, va bene qualunque.
    il fatto dei pulsanti e' un esempio sballato (quando spiego le cose riesco solo a confonderle... :D), vorrei un prog che *controlla* il browser, in particolare rileva quando viene premuto il pulsante aggiorna
    potrei trovare l'handle della finestra e al suo interno l'handle del pulsante e controllare i messaggi che gli arrivano, ma se ci fosse qualche funzione messa a disposizione del browser sarebbe tutto piu' facile, anche perche' il metodo dei messaggi e' una cosa che non ho mai fatto e non so neanche bene come si fa...

  8. #8
    Guest

    Predefinito

    aiuto!!!

    ho stilato il prog ma non va
    in pratica mi serve che rileva quando viene premuto il pulsante aggiorna in iexplorer
    avevo provato con l'ole, ma mi sembra che iexplorer non esponga alcun evento utile...
    allora ho provato con il subclassing
    il prog cerca tra le finestre attive quelle il cui titolo abbia "Internet Explorer", poi di questo trova l'handle della barra dei pulsanti
    il passo successivo sarebbe gestire i messaggi del mouse per determinare quando viene cliccata l'area del pulsante aggiorna
    pero' ho porvato col subclassing (setwindowlong) ma non funziona
    ho provato con l'hook (setwindowshookex o quello che e') ma non funziona

    il tutto e' fatto in visual basic (purtroppo)
    da quel che ho letto pare che il problema sia che la routine per l'hook o per il subclassing non puo' stare nell'exe del prog ma deve essere in una dll, pero' io dll in vb non ne ho mai fatte: come si fanno? c'e' qc di particolare? poi come specifico dal prog che la routine che mi serve sta in quella dll?

    se qc ha un'idea migliore per farequesto prog lo dica, che mi si sta esaurendo il cervello :D

  9. #9
    Guest

    Predefinito

    Da quel poco che ho usato VB mi pare che le dll si facessero senza problemi.

    Ad ogni modo ti linko un interessante articolo (in inglese) che dimostra che le dll NON sono necessarie per gli hook di sistema, non e' semplice ma qualcosa si puo' ricavare.

    Lo trovi qui: http://www.neworder.box.sk/newsread.php?newsid=10952

  10. #10
    Guest

    Predefinito

    l'avevo gia' letto ma da vb GetModuleHandle(vbnull) non mi da' proprio niente
    inoltre la clausola __declspec(dllexport) in vb non esiste...

    vabbe' provero' con le dll
    pero' prima che mi uccido con le dll, credi dipenda da quello che non funziona l'hook?
    e soprattutto, un modo piu' pratico non c'e'? (alla fin fine anche se riesco a fare tutta sta roba il prog rilevera' il click solo se i pulsanti sono delle dimensioni e nelle posizioni in cui ce li ho io!)

  11. #11
    Guest

    Predefinito

    (premesso che non ho mai usato gli hook)

    Ricapitolando:
    IE non esporta alcun tipo di evento valido
    usi il subclassing, quindi l'handle, ma niente

    uhm...


    hai provato a vedere se il componente di IE disponibile per VB esporta eventi validi? Se lo fa lui lo dovrebbe fare anche IE.

    E' solo un'ipotesi, ma a questo punto... mah

  12. #12
    Guest

    Predefinito

    Citazione Originalmente inviato da CoD
    (premesso che non ho mai usato gli hook)

    Ricapitolando:
    IE non esporta alcun tipo di evento valido

    hai provato a vedere se il componente di IE disponibile per VB esporta eventi validi? Se lo fa lui lo dovrebbe fare anche IE.
    avevo gia' controllato, esporta qualche evento, ma niente che indichi se la pagina e' stata refreshata
    o almeno credo, ha qualche evento tipo beforenavigate o changedstatus (non ricordo bene i nomi, ma il concetto e' quello) che potrebbero servire, ma non mi pare che si capisca se e' stata aggiornata la pag (ho provato a controllare come variano i flags passati per argomento nelle varie situazioni, ma non c'e' niente che identifichi il refresh... mi servirebbe la guida degli eventi di iexplorer, ma non sono riuscito a trovarla... ne' sull'msdn di vb ne' su quella online... boh)

    Citazione Originalmente inviato da CoD
    usi il subclassing, quindi l'handle, ma niente
    quando chiamo setwindowlong (con gli argomenti esatti) non subclassa un bel niente e non restituisce niente di niente
    ora provo con 1 dll, pero' quando chiamo setwindowslong gli passo l'indirizzo della routine di subclass con l'operatore di vb AddressOf nome_funzione /vb non ha i puntatori purtroppo), ma questo funziona solo coi moduli bas inclusi nell'exe, come faccio a ricavarmi l'indirizzo della funzione inclusa nella dll per poi passarlo a setwinlong?

  13. #13
    Guest

    Predefinito

    Mi spiace ma a questo punto non sono in grado di aiutarti :( mi sa che devi chiedere a qualcuno piu' esperto di me


Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •