Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di ciaz
    Registrato dal
    Oct 2008
    Messaggi
    68

    [vb.net] Selezionare file da finestra di dialogo automaticamente

    Ciao a tutti,
    utilizzando l'oggetto webbrowser riesco ad aprire una finestra di dialogo per l'apertura di un file così
    codice:
     
    WebBrowser1.Document.GetElementById("file").InvokeMember("Click")
    Ora vorrei che l'utente non selezioni il file direttamente cliccandoci sopra 2 volte, bensi vorrei che lo facesse il programma, in quanto il percorso del file è già noto, ovvero è presente in txtPercorso.text

    Quindi vorrei sapere se sia possibile (e chiaramente come ) aprire il file automaticamente, conoscendo la cartella e il nome del file

    Grazie mille a chi mi aiuterà

  2. #2
    Utente di HTML.it L'avatar di ciaz
    Registrato dal
    Oct 2008
    Messaggi
    68
    Piccolo aggiornamento

    codice:
    'lascio presente sulla textbox solo il nome e l'estensiopne del file
    txtPercorso.Text = Replace(txtPercorso.Text, "C:\", "")
    
    'Preparo la clipboard e copio il contenuto della textbox
    Clipboard.Clear()
    Clipboard.SetDataObject(txtPercorso.Text)
    
    'Col webbrowser premo il tasto Sfoglia... e mi si apre una finestra di dialogo
    WebBrowser1.Document.GetElementById("addurl").InvokeMember("Click")
    
    'Metto a nanna per un pò
    Threading.Thread.Sleep(500)
    
    'Incollo il nome del file sulla finestra di dialogo 
    Clipboard.GetData(TextDataFormat.Text)
    Funziona tutto tranne chiaramente l'ultimo passaggio, quello di incolla

    Tra l'altro è strano perchè il focus c'è e se premo io da testiera CTRL+V funziona
    Ho provato anche con Senkeys.send ("^v") ma non fa neanche così... qualcuno potrebbe aiutarmi?
    Pleeeeeeease

  3. #3
    Utente di HTML.it L'avatar di ciaz
    Registrato dal
    Oct 2008
    Messaggi
    68
    Ho risolto in questo modo, magari può servire a qualcuno
    codice:
    Clipboard.Clear()
    Clipboard.SetDataObject(txtPercorso.Text)
    WebBrowser1.Document.GetElementById("file").Focus()
    SendKeys.Send("^v")
    mi sono accorto poi che non era necessario eliminare "c:\" dalla text percorso.
    Con il codice che ho postato adesso non si apre la finestra di dialogo che mi faceva perdere il controllo sul programma, bensì copia il percorso e lo incolla tramite la clipboard.
    Non è il massimo dell'eleganza però funziona

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.