Mapped.IconExtractor
This commit is contained in:
70
Pilz.Win32/Native/Shell32.vb
Normal file
70
Pilz.Win32/Native/Shell32.vb
Normal file
@@ -0,0 +1,70 @@
|
||||
Imports System.Runtime.InteropServices
|
||||
|
||||
Namespace Native
|
||||
|
||||
Public Class Shell32
|
||||
|
||||
''' <summary>
|
||||
''' Creates an array of handles to large or small icons extracted from
|
||||
''' the specified executable file, dynamic-link library (DLL), or icon
|
||||
''' file.
|
||||
''' </summary>
|
||||
''' <param name="lpszFile">
|
||||
''' Name of an executable file, DLL, or icon file from which icons will
|
||||
''' be extracted.
|
||||
''' </param>
|
||||
''' <param name="nIconIndex">
|
||||
''' <para>
|
||||
''' Specifies the zero-based index of the first icon to extract. For
|
||||
''' example, if this value is zero, the function extracts the first
|
||||
''' icon in the specified file.
|
||||
''' </para>
|
||||
''' <para>
|
||||
''' If this value is <20>1 and <paramrefname="phiconLarge"/> and
|
||||
''' <paramrefname="phiconSmall"/> are both NULL, the function returns
|
||||
''' the total number of icons in the specified file. If the file is an
|
||||
''' executable file or DLL, the return value is the number of
|
||||
''' RT_GROUP_ICON resources. If the file is an .ico file, the return
|
||||
''' value is 1.
|
||||
''' </para>
|
||||
''' <para>
|
||||
''' Windows 95/98/Me, Windows NT 4.0 and later: If this value is a
|
||||
''' negative number and either <paramrefname="phiconLarge"/> or
|
||||
''' <paramrefname="phiconSmall"/> is not NULL, the function begins by
|
||||
''' extracting the icon whose resource identifier is equal to the
|
||||
''' absolute value of <paramrefname="nIconIndex"/>. For example, use -3
|
||||
''' to extract the icon whose resource identifier is 3.
|
||||
''' </para>
|
||||
''' </param>
|
||||
''' <param name="phIconLarge">
|
||||
''' An array of icon handles that receives handles to the large icons
|
||||
''' extracted from the file. If this parameter is NULL, no large icons
|
||||
''' are extracted from the file.
|
||||
''' </param>
|
||||
''' <param name="phIconSmall">
|
||||
''' An array of icon handles that receives handles to the small icons
|
||||
''' extracted from the file. If this parameter is NULL, no small icons
|
||||
''' are extracted from the file.
|
||||
''' </param>
|
||||
''' <param name="nIcons">
|
||||
''' Specifies the number of icons to extract from the file.
|
||||
''' </param>
|
||||
''' <returns>
|
||||
''' If the <paramrefname="nIconIndex"/> parameter is -1, the
|
||||
''' <paramrefname="phIconLarge"/> parameter is NULL, and the
|
||||
''' <paramrefname="phiconSmall"/> parameter is NULL, then the return
|
||||
''' value is the number of icons contained in the specified file.
|
||||
''' Otherwise, the return value is the number of icons successfully
|
||||
''' extracted from the file.
|
||||
''' </returns>
|
||||
<DllImport("Shell32", CharSet:=CharSet.Auto)>
|
||||
Public Shared Function ExtractIconEx(<MarshalAs(UnmanagedType.LPTStr)> ByVal lpszFile As String, ByVal nIconIndex As Integer, ByVal phIconLarge As IntPtr(), ByVal phIconSmall As IntPtr(), ByVal nIcons As Integer) As Integer
|
||||
End Function
|
||||
|
||||
<DllImport("Shell32", CharSet:=CharSet.Auto)>
|
||||
Public Shared Function SHGetFileInfo(ByVal pszPath As String, ByVal dwFileAttributes As Integer, <Out> ByRef psfi As SHFILEINFO, ByVal cbFileInfo As Integer, ByVal uFlags As FileInfoFlags) As IntPtr
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
||||
Reference in New Issue
Block a user