Получить картинку согласно расширению - VB
Формулировка задачи:
Собс-но по теме. Есть список названий файлов - как каждому типу файлов согласно его расширению сопоставить системную картинку? Ни кто случаем не занимался?
Решение задачи: «Получить картинку согласно расширению»
textual
Листинг программы
Option Explicit
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 ExtractAssociatedIcon Lib 'shell32.dll' _
Alias 'ExtractAssociatedIconA' (ByVal hInst As Long, _
ByVal lpIconPath As String, lpiIcon As Long) As Long
Private Sub GetAssociatedIcon(picBox As PictureBox, filePath _
As String)
Dim hIcon As Long ' handle to icon
If Dir(filePath) <> '' Then 'a simple check.
hIcon = ExtractAssociatedIcon(App.hInstance, _
filePath, 0) ' try and get icon handle.
If hIcon <> 0& Then ' if we have the handle then
Picture1.AutoRedraw = True ' need this
Call DrawIcon(picBox.hdc, 0, 0, hIcon) ' draw the icon
picBox.Refresh ' refresh the box
picBox.AutoRedraw = False ' saves memory , but not needed
End If
Else ' duh file does not exist.
MsgBox ('Must be a valid path')
End If
End Sub
Private Sub Command1_Click()
Call GetAssociatedIcon(Picture1, 'c:mpr'sjd1.mp3')
End Sub