⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shellfolder.h

📁 Drive.dll is a dll that creates a drive to system directoryor drive similar to existing drives such
💻 H
字号:
//
// ShellFolder.h
//

#ifndef _SHELLFOLDER_H
#define _SHELLFOLDER_H

#include "EnumIDL.h"

class CShellFolder : public IShellFolder, public IPersistFolder
{
friend class CShellView;
friend class CEnumIDList;
friend class CContextMenu;
protected:
	ULONG m_ulRef;

public:
	CShellFolder(CShellFolder*, LPCITEMIDLIST lpidl);
	~CShellFolder();

	//IUnknown methods
	STDMETHOD (QueryInterface) (REFIID riid, LPVOID * ppvObj);
	STDMETHOD_ (ULONG, AddRef) (void);
	STDMETHOD_ (ULONG, Release) (void);

	//IPersist methods
	STDMETHODIMP GetClassID(LPCLSID);

	//IPersistFolder methods
	STDMETHODIMP Initialize(LPCITEMIDLIST);

	//IShellFolder methods
	STDMETHOD (ParseDisplayName) (HWND, LPBC, LPOLESTR, LPDWORD, 
		LPITEMIDLIST*, LPDWORD);
	STDMETHOD (EnumObjects) (HWND, DWORD, LPENUMIDLIST*);
	STDMETHOD (BindToObject) (LPCITEMIDLIST, LPBC, REFIID, LPVOID*);
	STDMETHOD (BindToStorage) (LPCITEMIDLIST, LPBC, REFIID, LPVOID*);
	STDMETHOD (CompareIDs) (LPARAM, LPCITEMIDLIST, LPCITEMIDLIST);
	STDMETHOD (CreateViewObject) (HWND, REFIID, LPVOID* );
	STDMETHOD (GetAttributesOf) (UINT, LPCITEMIDLIST*, LPDWORD);
	STDMETHOD (GetUIObjectOf) (HWND, UINT, LPCITEMIDLIST*, REFIID, LPUINT, LPVOID*);
	STDMETHOD (GetDisplayNameOf) (LPCITEMIDLIST, DWORD, LPSTRRET);
	STDMETHOD (SetNameOf) (HWND, LPCITEMIDLIST, LPCOLESTR, DWORD, LPITEMIDLIST*);
private:
	FOLDERSETTINGS	m_fsFolderSettings;
	LPMALLOC		m_pMalloc;
	LPPIDLMGR		m_pPidlMgr;
private:
	LPCITEMIDLIST	m_pidl;
	LPITEMIDLIST	m_pidlFQ;
private:
	CShellFolder	*m_psfParent;
};

#endif   //_SHELLFOLDER_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -