Molti domandano come aprire un file esterno, associato ad un qualunque programma, da Visual Basic.

In un modulo dichiariamo la seguente funzione:

codice:
 
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As_

String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Public Const SW_NORMAL = 1
A questo punto dalla vostra applicazione richiamate il file che volete aprire come segue:
codice:
Dim X As Long
X = ShellExecute(hWnd, "Open", "C:\nomecartella\nomefile.doc", vbNullString, vbNullString, SW_NORMAL)

In questo caso si apre direttamente un documento di Word. Con lo stesso sistema potere aprire una pagina Internet o inviare una mail.

codice:
 
Dim X As Long
X = ShellExecute(hWnd, "Open", "http://www.maurorossi.net", vbNullString, vbNullString, SW_NORMAL)

'oppure

codice:
 
Dim X As Long
X = ShellExecute(hWnd, "Open", "mailto:rossimt@sistel.it?subject=Prova&body=Testo da inviare", vbNullString, vbNullString, SW_NORMAL)

Con lo stesso metodo potete anche lanciare un exe, o un file di qualunque estensione.
(Il quarto parametro è per gli eventuali comandi della riga di comando, il quinto per la directory di origine, in questo caso sono entrambi nulle).