cdfview.h
资源名称:shell.rar [点击查看]
上传用户:xhy777
上传日期:2007-02-14
资源大小:24088k
文件大小:4k
源码类别:
系统编程
开发平台:
Visual C++
- //\//\//\//\//\//\//\//\//\//\//\//\//\//\//\//\//\//\//\//\
- //
- // cdfview.h
- //
- // The class definition for the cdf view class. This class implements the
- // IShelFolder interface.
- //
- // History:
- //
- // 3/16/97 edwardp Created.
- //
- ////////////////////////////////////////////////////////////////////////////////
- //
- // Check for previous includes of this file.
- //
- #ifndef _CDFVIEW_H_
- #define _CDFVIEW_H_
- //
- // Function prototypes.
- //
- HRESULT QueryInternetShortcut(LPCTSTR pszURL, REFIID riid, void** ppvOut);
- HRESULT QueryInternetShortcut(PCDFITEMIDLIST pcdfidl, REFIID riid,
- void** ppvOut);
- //
- // Class definition for the cdf view class.
- //
- class CCdfView : public IShellFolder,
- public CPersist
- {
- //
- // Methods
- //
- public:
- // Constructors
- CCdfView(void);
- CCdfView(PCDFITEMIDLIST pcdfidl,
- LPCITEMIDLIST pidlParentPath,
- IXMLElementCollection* pIXMLElementCollection);
- // IUnknown
- STDMETHODIMP QueryInterface(REFIID, void **);
- STDMETHODIMP_(ULONG) AddRef(void);
- STDMETHODIMP_(ULONG) Release(void);
- // IShellFolder
- STDMETHODIMP ParseDisplayName(HWND hwndOwner,
- LPBC pbcReserved,
- LPOLESTR lpszDisplayName,
- ULONG* pchEaten,
- LPITEMIDLIST* ppidl,
- ULONG* pdwAttributes);
- STDMETHODIMP EnumObjects(HWND hwndOwner,
- DWORD grfFlags,
- LPENUMIDLIST* ppenumIDList);
- STDMETHODIMP BindToObject(LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- LPVOID* ppvOut);
- STDMETHODIMP BindToStorage(LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- LPVOID* ppvObj);
- STDMETHODIMP CompareIDs(LPARAM lParam,
- LPCITEMIDLIST pidl1,
- LPCITEMIDLIST pidl2);
- STDMETHODIMP CreateViewObject(HWND hwndOwner,
- REFIID riid,
- LPVOID* ppvOut);
- STDMETHODIMP GetAttributesOf(UINT cidl,
- LPCITEMIDLIST* apidl,
- ULONG* pfAttributesOut);
- STDMETHODIMP GetUIObjectOf(HWND hwndOwner,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- REFIID riid,
- UINT* prgfInOut,
- LPVOID * ppvOut);
- STDMETHODIMP GetDisplayNameOf(LPCITEMIDLIST pidl,
- DWORD uFlags,
- LPSTRRET lpName);
- STDMETHODIMP SetNameOf(HWND hwndOwner,
- LPCITEMIDLIST pidl,
- LPCOLESTR lpszName,
- DWORD uFlags,
- LPITEMIDLIST* ppidlOut);
- // IPersistFolder
- STDMETHODIMP Initialize(LPCITEMIDLIST pidl);
- private:
- // Destructor
- ~CCdfView(void);
- // Parsing helper functions.
- HRESULT ParseCdfFolder(HWND hwndOwner, DWORD dwParseFlags);
- // Folder helper functions.
- //
- // Member variables.
- //
- private:
- ULONG m_cRef;
- PCDFITEMIDLIST m_pcdfidl; // This folder's pidl
- LPITEMIDLIST m_pidlPath; // Path to this folder.
- IXMLElementCollection* m_pIXMLElementCollection;
- BOOL m_fIsRootFolder; // Is this the root folder.
- };
- #endif _CDFVIEW_H_
English
