Za pokretanje nekog file-a iz VB aplikacije potrebno je prvo deklarisati API funkciju ShellExecute:
Private 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
Deklarisati i varijablu koja će sadržavati putanju i ime file-a i varijablu za praćenje greške:
Dim file As String, greska As Variant
Nakon toga, pozivanje funkcije se vrši navođenjem cijele putanje do file-a koji se pokreće kao argumenta funkcije ShellExecute:
'otvaranje file-a
greska = ShellExecute(frmopen.hwnd, "open", file, "", "", 1) 'praćenje greške
shellgreske greska
Gdje je:
frmopen– ime forme iz koje se vrši pokretanje file-a,
open – parametar za pokretanje file-a (može biti i print ili explore),
file– putanja i ime file-a sa extenzijom (file="c:\temp\proba.doc")
1 – označava da se prozor pokrenutog file-a aktivira (može biti i:0, 2, 3,4,5,6,7,8,9)
0 – sakriva prozor
3 – aktivira prozor i maksimizira ga
Funkcija shellgreske je sljedeća:
Public Sub shellgreske(greska)
'Detekcija grešaka pri korištenju funkcije ShellExecute
If greska = 2 Then
MsgBox "Traženi file ne postoji u navedenom direktoriju.", vbInformation, "Obavijest."
Exit Sub
End If
If greska = 3 Then
MsgBox "Navedeni direktorij ne postoji.", vbInformation, "Obavijest."
Exit Sub
End If
If greska = 8 Then
MsgBox "Nedostatak memorije za pokretanje aplikacije.", vbInformation, "Obavijest."
Exit Sub
End If
If greska = 11 Then
MsgBox "Izvršni file ili je oštećen ili nije windows aplikacija.", vbInformation, "Obavijest."
Exit Sub
End If
If greska = 14 Then
MsgBox "Nepoznat tip izvršne aplikacije.", vbInformation, "Obavijest."
Exit Sub
End If
If greska = 19 Then
MsgBox "Pokušaj učitavanja kompresovanog file-a.", vbInformation, "Obavijest."
Exit Sub
End If
If greska = 20 Then
MsgBox "Oštećen je neki DLL file potreban za pokretanje aplikacije.", vbInformation, "Obavijest."
Exit Sub
End If
End Sub
Primjer upotrebe ove API funkcije možete download-ovati ispod.
To je jednostavan VB6 projekat koji nudi izbor diska i direktorija u kome se traži dokument koji se pokreće, a samo otvaranje dokumenta se vrši dvoklikom na ime tog dokumenta.
Dokument će biti otvoren u aplikaciji koja je za to određena na računaru na kome je VB program pokrenut.