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

📄 myprop.h

📁 随着计算机信息技术的飞速发展
💻 H
字号:
// MyProp.h : CMyProp 的声明

#pragma once
#include "resource.h"       // 主符号

#include "zzPropEx.h"

// CMyProp

class ATL_NO_VTABLE CMyProp : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CMyProp, &CLSID_MyProp>,
	public IMyProp,
	public IShellExtInit,
	public IShellPropSheetExt
{
public:
	CMyProp()
	{
	}

DECLARE_REGISTRY_RESOURCEID(IDR_MYPROP)

BEGIN_COM_MAP(CMyProp)
	COM_INTERFACE_ENTRY(IMyProp)
	COM_INTERFACE_ENTRY_IID(IID_IShellExtInit,IShellExtInit)
	COM_INTERFACE_ENTRY_IID(IID_IShellPropSheetExt,IShellPropSheetExt)
END_COM_MAP()

DECLARE_PROTECT_FINAL_CONSTRUCT()

	HRESULT FinalConstruct()
	{
		//初使化GDI+
		GdiplusStartup(&m_GDIppToken,&m_GDIppSI,0);

		return S_OK;
	}
	
	void FinalRelease() 
	{
		//释放GDI+资源
		GdiplusShutdown(m_GDIppToken);
	}

public:
	TCHAR m_FileName[MAX_PATH];
	GdiplusStartupInput m_GDIppSI;
	ULONG_PTR m_GDIppToken;
		
	HRESULT AddPropPage(LPFNSVADDPROPSHEETPAGE,LPARAM,DLGPROC,LPCTSTR,WORD);
	void DrawThumbnailImage(HWND,HDC);

	STDMETHOD(Initialize)(LPCITEMIDLIST,IDataObject*,HKEY);
	STDMETHOD(AddPages)(LPFNSVADDPROPSHEETPAGE,LPARAM);
	STDMETHOD(ReplacePage)(UINT,LPFNSVADDPROPSHEETPAGE,LPARAM);
};

OBJECT_ENTRY_AUTO(__uuidof(MyProp), CMyProp)

⌨️ 快捷键说明

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