Stefan ti je odgovorio na pitanje ...
Ja sam napravio varijaciju na ovaj kod. Program pokazuje sve mogucnosti ove dve Win API funkcije tako sto na Formu iscrtava sve ikonice iz Explorera (ili nekog drugog programa).
Nije potrebno nista od kontrola na formi.
poz
Code:
Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hIcon As Long) As Long
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long
Private Sub Form_Load()
Dim hIcon As Long, iNo As Long, no As Long
iNo = ExtractIcon(App.hInstance, "c:\windows\explorer.exe", -1) '-1 vraca broj ikonica u fajlu
If Not iNo = 0 Then
Me.AutoRedraw = True: Me.Move 50 * Screen.TwipsPerPixelX, 50 * Screen.TwipsPerPixelY, iNo * 40 * Screen.TwipsPerPixelX, 75 * Screen.TwipsPerPixelY '
For no = 0 To iNo - 1
hIcon = ExtractIcon(App.hInstance, "c:\windows\explorer.exe", no) ' extractuje ikonicu sa indexom no
DrawIcon Me.hdc, 40 * no, 10, hIcon ' iscrtava jednu do druge
Next no
Me.Refresh
End If
End Sub