Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

41 lines
1.4 KiB

////////////////////////////////////////////////////////////////////////
//
// CExtractIcon
//
// IExtractIcon implementation
//
////////////////////////////////////////////////////////////////////////
#ifndef _INC_CEXTICON_H
#define _INC_CEXTICON_H
class CExtractIcon : public IExtractIconA, public IExtractIconW
{
public:
// *** IUnknown methods ***
HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppvObject);
ULONG STDMETHODCALLTYPE AddRef(void);
ULONG STDMETHODCALLTYPE Release(void);
// *** IExtractIconA methods ***
HRESULT STDMETHODCALLTYPE GetIconLocation(UINT uFlags,LPSTR szIconFile,UINT cchMax,int FAR *piIndex,UINT FAR *pwFlags);
HRESULT STDMETHODCALLTYPE Extract(LPCSTR pszFile,UINT nIconIndex,HICON FAR *phiconLarge,HICON FAR *phiconSmall,UINT nIcons);
#ifndef WIN16 // WIN16FF
// *** IExtractIconW methods ***
HRESULT STDMETHODCALLTYPE GetIconLocation(UINT uFlags,LPWSTR szIconFile,UINT cchMax,int FAR *piIndex,UINT FAR *pwFlags);
HRESULT STDMETHODCALLTYPE Extract(LPCWSTR pszFile,UINT nIconIndex,HICON FAR *phiconLarge,HICON FAR *phiconSmall,UINT nIcons);
#endif // !WIN16
CExtractIcon(int iIcon, int iIconOpen, UINT uFlags, LPSTR szModule);
~CExtractIcon();
private:
UINT m_cRef;
int m_iIcon;
int m_iIconOpen;
UINT m_uFlags;
char m_szModule[MAX_PATH];
};
#endif // _INC_CEXTICON_H