ExtractIcon Function
----------------------------------------------------------------------------
----
The ExtractIcon function retrieves a handle to an icon from the specified
executable file, dynamic-link library (DLL), or icon file.
To retrieve an array of handles to large or small icons, use the
ExtractIconEx function.
Syntax
HICON ExtractIcon( HINSTANCE hInst,
LPCTSTR lpszExeFileName,
UINT nIconIndex
);
Parameters
hInst
[in] Handle to the instance of the application calling the function.
lpszExeFileName
[in] Pointer to a null-terminated string specifying the name of an
executable file, DLL, or icon file.
nIconIndex
[in] Specifies the zero-based index of the icon to retrieve. For
example, if this value is 0, the function returns a handle to the first icon
in the specified file.
If this value is –1, 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.
Windows 95/98/Me, Windows NT 4.0 and later: If this value is a negative
number not equal to -1, the function returns a handle to the icon in the
specified file whose resource identifier is equal to the absolute value of
nIconIndex. For example, use –3 to extract the icon whose resource
identifier is 3. To extract the icon whose resource identifier is 1, use the
ExtractIconEx function.
Return Value
The return value is a handle to an icon. If the file specified was not an
executable file, DLL, or icon file, the return is 1. If no icons were found
in the file, the return value is NULL.
Remarks
You must destroy the icon handle returned by ExtractIcon by calling the
DestroyIcon function.
Windows 95/98/Me: ExtractIconW is supported by the Microsoft® Layer for
Unicode (MSLU). To use this, you must add certain files to your application,
as outlined in Microsoft Layer for Unicode on Windows 95/98/Me Systems.
Function Information
Header Declared in Shellapi.h
Import library Shell32.lib
Minimum operating systems Windows 95, Windows NT 3.1
Unicode Implemented as Unicode and ANSI versions on Windows NT,
Windows 2000, Windows XP
See Also
Icons Overview, DestroyIcon, ExtractIconEx