Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - WebBrowser e download file
Forum - C# / VB.NET - WebBrowser e download file

Avatar
Babudoiu (Normal User)
Newbie


Messaggi: 2
Iscritto: 20/09/2008

Segnala al moderatore
Postato alle 11:30
Sabato, 20/09/2008
salve, ho trovato questo sito navigando in rete, e vedo che è davvero interessante e ricco di spunti, complimenti davvero!
mi presento qui con un piccolo problema in vb .net.
sto realizzando un software che comunica con un server remoto.
il software è molto semplice, un webbrowser, una casella di testo ed un pulsante.
quello che scrivo nella casella di testo viene inviato al server remoto sotto forma di stringa POST.
il server esegue il comando e restituisce una risposta, positiva o negativa.
purtroppo la risposta è sotto forma di file .txt.
cosa succede a questo punto?
il webbrowser emette la finestra di dialogo che richiede se si vuole salvare il file di risposta, aprirlo o annullare il download.
la mia necessità sarebbe quella di bypassare questo step, ovvero, intercettare in qualche modo il download e salvare il file di risposta su pc in maniera automatica, senza l'emissione della finestra di dialogo.
pensavo che l'evento webbrowser_filedownload mi potesse dare una mano ma non riesco a venirne fuori.
qualcuno saprebbe darmi una dritta in merito?
grazie :)

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 15:19
Sabato, 20/09/2008
Codice sorgente - presumibilmente VB.NET

  1. Public Function GetWebPage(ByVal Query As String) As String
  2.         Dim Request As Net.WebRequest = Net.WebRequest.Create(Query)
  3.         Dim Response As Net.WebResponse = Request.GetResponse()
  4.         Dim Reader As New IO.StreamReader(Response.GetResponseStream())
  5.         Dim ResultPage As New System.Text.StringBuilder()
  6.  
  7.         Do While Not Reader.EndOfStream
  8.             ResultPage.AppendLine(Reader.ReadLine)
  9.         Loop
  10.         Reader.Close()
  11.  
  12.         Return ResultPage.ToString
  13.     End Function


Questa è una funzione presa da uno dei miei programmi. L'argomento è costruito come un normale indirizzo o una query GET. Ho letto degli esempi in cui lo si utilizzava con POST, quindi potresti provare.

PM Quote
Avatar
Babudoiu (Normal User)
Newbie


Messaggi: 2
Iscritto: 20/09/2008

Segnala al moderatore
Postato alle 10:52
Lunedì, 22/09/2008
Testo quotato

Postato originariamente da Il Totem:

Codice sorgente - presumibilmente VB.NET

  1. Public Function GetWebPage(ByVal Query As String) As String
  2.         Dim Request As Net.WebRequest = Net.WebRequest.Create(Query)
  3.         Dim Response As Net.WebResponse = Request.GetResponse()
  4.         Dim Reader As New IO.StreamReader(Response.GetResponseStream())
  5.         Dim ResultPage As New System.Text.StringBuilder()
  6.  
  7.         Do While Not Reader.EndOfStream
  8.             ResultPage.AppendLine(Reader.ReadLine)
  9.         Loop
  10.         Reader.Close()
  11.  
  12.         Return ResultPage.ToString
  13.     End Function


Questa è una funzione presa da uno dei miei programmi. L'argomento è costruito come un normale indirizzo o una query GET. Ho letto degli esempi in cui lo si utilizzava con POST, quindi potresti provare.



cosa posso dirti?
che mi hai risolto un grandissimo, immenso problema!
in realtà con la tua funzione non mi serve nemmeno più il webbrowser, mi è sufficiente passare alla funzione il contenuto della stringa POST, ed il risultato mi viene restituito in un'altra stringa!
fantastico :k::k::k:

grazie!

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 16:27
Lunedì, 22/09/2008
Prego :D

PM Quote