WebView2 metodi CoreWebView2

di il
2 risposte

WebView2 metodi CoreWebView2

Buongiorno a tutti voi.
un paio di mesi fa, in sede di miglioramento di un mio browser (basato su weview2) ho dovuto scrivere (anche con il vostro aiuto, a volte determinante, come quello di SirJo) decine di righe di codice per estrapolare dalla pagina visitata il titolo , la stringa contenente la favicon (nelle diverse tipologie) ed infine la favicon medesima.

Ora (solo ora, beata ignoranza!) mi sono accorto che ci sono tre metodi di CoreWebView2 per ottenere questi  dati con 3 linee di codice:

a) Dim titoloDocumento As String = WebView2.CoreWebView2.DocumentTitle : fornisce il titolo della pagina
b) Dim stringaFavicon As String = WebView2.CoreWebView2.FaviconUri : fornisce la stringa contenente la favicon
c) Dim faviconStream = WebView2.CoreWebView2.GetFaviconAsync : restituisce la favicon (ma nei soli formati png e jpg,che poi sarà possibile modificare negli altri formati ,tipo ico,per esempio)

Per le prime due non ci sono problemi.
Dalla terza non ottengo alcun risultato:

    Private Async Sub GetFavicon()
       Dim faviconStream = Await wv21.CoreWebView2.GetFaviconAsync(Microsoft.Web.WebView2.Core.CoreWebView2FaviconImageFormat.Png)
   End Sub

Posso ,ancora una volta, abusare delle vostre conoscenze per chiedere un aiuto?Grazieeee!

2 Risposte

  • Re: WebView2 metodi CoreWebView2

    Dim faviconStream = Await wv21.CoreWebView2.GetFaviconAsync(Microsoft.Web.WebView2.Core.CoreWebView2FaviconImageFormat.Png)
    Dim buffer(faviconStream.Length - 1) As Byte
    faviconStream.Read(buffer, 0, faviconStream.Length)
    My.Computer.FileSystem.WriteAllBytes(My.Computer.FileSystem.SpecialDirectories.Desktop & "\image.png", buffer, append:=False)

    oppure un'altra soluzione può essere ricavarsi l'url con

    Dim stringaFavicon As String = WebView2.CoreWebView2.FaviconUri ' fornisce la stringa contenente la favicon

    e poi usare un WebClient per scaricarsi l'immagine, mi sembra che il codice te l'avevo già dato

  • Re: WebView2 metodi CoreWebView2

    13/01/2024 - SirJo ha scritto:


    Dim faviconStream = Await wv21.CoreWebView2.GetFaviconAsync(Microsoft.Web.WebView2.Core.CoreWebView2FaviconImageFormat.Png) Dim buffer(faviconStream.Length - 1) As Byte faviconStream.Read(buffer, 0, faviconStream.Length) My.Computer.FileSystem.WriteAllBytes(My.Computer.FileSystem.SpecialDirectories.Desktop & "\image.png", buffer, append:=False)

    Grande SirJo!!

    E' superfluo, ma bisogna scriverlo : FUNZIONA!

    Grazie.

    13/01/2024 - SirJo ha scritto:


    e poi usare un WebClient per scaricarsi l'immagine, mi sembra che il codice te l'avevo già dato

    Certo. Attualmnete uso proprio quello.

Devi accedere o registrarti per scrivere nel forum
2 risposte