[C# e VB.NET] Accedere alla cartelle aperte in Windows Explorer e Internet Explorer


Salve a tutti!

oggi scrivo questo articolo per mostrarvi un metodo che permette di ottenere le directory aperte in Esplora risorse (explorer.exe) e l'url corrente in Internet Explorer (iexplorer.exe)

Dopo aver avviato un nuovo progetto, sarà necessario importare la libreria COM "Microsoft Internet Controls". Per fare ciò ci rechiamo in Esplora soluzioni (per chi usa Visual Studio), quindi col tasto destro clicchiamo su Riferimenti, quindi aggiungi riferimento. Non ci resterà che selezionare COM dal menù a lato della finestra che compare, quindi trovare "Microsoft Internet Controls".

Ricordiamoci inoltre che per evitare errori durante la compilazione dobbiamo impostare, nelle proprietà del riferimento appena aggiunto, "Incorpora tipi di interoperabilità" su False.

Non ci resta che copiare questo pezzo di codice nella funzione che vi occorre:

C#
SHDocVw.ShellWindows shellWindows = new SHDocVw.ShellWindowsClass();

 
string filename;
 
foreach ( SHDocVw.InternetExplorer ie in shellWindows )
{
    filename = System.IO.Path.GetFileNameWithoutExtension( ie.FullName ).ToLower();
 
    
if ( filename.Equals( "iexplore" ) )
        
Console.WriteLine( "Sito web   : {0}", ie.LocationURL );
 
    
if ( filename.Equals( "explorer" ) )
        
Console.WriteLine( "Cartella : {0}", ie.LocationURL );
}

 

VB.NET
  Dim shellWindows As SHDocVw.ShellWindows = New SHDocVw.ShellWindowsClass()
  
Dim filename As String

   
For Each ie As SHDocVw.InternetExplorer In shellWindows
   filename = System.IO.
Path.GetFileNameWithoutExtension(ie.FullName).ToLower()

          
If filename.Equals("iexplore"Then
              
Console.WriteLine("Sito Web   : {0}", ie.LocationURL)
          
End If

          
If filename.Equals("explorer"Then
              
Console.WriteLine("Cartella : {0}", ie.LocationURL)
          
End If
   
Next

Questo è tutto, grazie per aver visualizzato e buon proseguimento!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*