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

📄 template.txt

📁 EVC4.rar
💻 TXT
📖 第 1 页 / 共 4 页
字号:
	{
		ForceRemove {2EF12E30-3C3B-11d1-AFA9-00C04FB99436} = s 'ATL Object Wizard'
		{
			ProgID = s 'ATLOBJ.ATLWiz.1'
			VersionIndependentProgID = s 'ATLOBJ.ATLWiz'
			InprocServer32 = s '%Module%'
		}
	}
}
HKLM
{
	Software
	{
		Microsoft
		{
			DevStudio
			{
				6.0
				{
					ATLWizard
					{
						'{6E871954-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Control' = s 'object.ctl'
							val 'Icon' = s 'object.ico'
							val 'Name' = s 'Simple Object'
						}
						'{6E871955-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Name' = s 'Add-in Object'
							val 'Control' = s 'addin.ctl'
							val 'Icon' = s 'addin.ico'
						}
						'{6E871956-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Name' = s 'Internet Explorer Object'
							val 'Control' = s 'ieuiless.ctl'
							val 'Icon' = s 'iexplore.ico'
						}
						'{6E871957-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Name' = s 'ActiveX Server Component'
							val 'Control' = s 'asp.ctl'
							val 'Icon' = s 'asp.ico'
						}
						'{6E871960-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Name' = s 'MS Transaction Server Component'
							val 'Control' = s 'msdtx.ctl'
							val 'Icon' = s 'msdtx.ico'
						}
						'{6E871961-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Name' = s 'Component Registrar Object'
							val 'Control' = s 'compreg.ctl'
							val 'Icon' = s 'compreg.ico'
						}
						'{6E871958-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'Full Control'
							val 'Control' = s 'control.ctl'
							val 'Icon' = s 'control.ico'
						}
						'{6E871959-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'Lite Control'
							val 'Control' = s 'control.ctl'
							val 'Icon' = s 'iexplore.ico'
							val 'SetSymbol' = s 'IEControl'
						}
						'{6E87195D-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'Composite Control'
							val 'Control' = s 'control.ctl'
							val 'Icon' = s 'compsite.ico'
							val 'SetSymbol' = s 'CompositeControl'
						}
						'{6E871962-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'HTML Control'
							val 'Control' = s 'control.ctl'
							val 'Icon' = s 'HTML.ico'
							val 'SetSymbol' = s 'HTMLControl'
						}
						'{6E87195A-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'Property Page'
							val 'Control' = s 'proppage.ctl'
							val 'Icon' = s 'proppage.ico'
						}
						'{6E87195B-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Miscellaneous'
							val 'Control' = s 'dialog.ctl'
							val 'Icon' = s 'dialog.ico'
							val 'Name' = s 'Dialog'
						}
						'{6E87195E-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Objects'
							val 'Control' = s 'snapin.ctl'
							val 'Icon' = s 'snapin.ico'
							val 'Name' = s 'MMC SnapIn'
						}
						'{6E87195C-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Data Access'
							val 'Name' = s 'Provider'
							val 'Control' = s 'provider.ctl'
							val 'Icon' = s 'provider.ico'
						}
						'{6E87195F-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Data Access'
							val 'Name' = s 'Consumer'
							val 'Control' = s 'consumer.ctl'
							val 'Icon' = s 'consumer.ico'
						}
						'{6E871963-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'Lite Composite Control'
							val 'Control' = s 'control.ctl'
							val 'Icon' = s 'compsite.ico'
							val 'SetSymbol' = s 'CompositeControl,IEControl'
						}
						'{6E871964-50AD-11D0-883E-080000185165}'
						{
							val 'Category' = s 'Controls'
							val 'Name' = s 'Lite HTML Control'
							val 'Control' = s 'control.ctl'
							val 'Icon' = s 'HTML.ico'
							val 'SetSymbol' = s 'HTMLControl,IEControl'
						}
					}
				}
			}
		}
	}
}</font></pre>

<p><font size="3">.RGS file for Names property page.</font></p>

<pre><font size="3">HKCR
{
	Names98.Names98 = s 'Names98 Class'
	{
		CurVer = s 'Names98.Names98.1'
		CLSID = s '{53FCBC28-5015-11d1-AFC7-00C04FB99436}'
	}
	Names98.Names98.1 = s 'Names98 Class'
	{
		CLSID = s '{53FCBC28-5015-11d1-AFC7-00C04FB99436}'
	}
	NoRemove CLSID
	{
		ForceRemove {53FCBC28-5015-11d1-AFC7-00C04FB99436} = s 'Names98 Class'
		{
			InprocServer32 = s '%MODULE%'
			{
				val ThreadingModel = s 'Both'
			}
		}
	}
}
</font></pre>

<p><font size="3"><b><u>Smaple Property Page code</u></b></font></p>

<p><font size="2"><b>.H File</b></font></p>

<pre><font size="3">// testpg.h : Declaration of the Ctestpg

#ifndef __TESTPG_H_
#define __TESTPG_H_

#include &quot;resource.h&quot;       // main symbols

EXTERN_C const CLSID CLSID_testpg;

/////////////////////////////////////////////////////////////////////////////
// Ctestpg
class ATL_NO_VTABLE Ctestpg :
	public CComObjectRootEx&lt;CComSingleThreadModel&gt;,
	public CComCoClass&lt;Ctestpg, &amp;CLSID_testpg&gt;,
	public IPropertyPageImpl&lt;Ctestpg&gt;,
	public CDialogImpl&lt;Ctestpg&gt;
{
public:
	Ctestpg() 
	{
		m_dwTitleID = IDS_TITLEtestpg;
		m_dwHelpFileID = IDS_HELPFILEtestpg;
		m_dwDocStringID = IDS_DOCSTRINGtestpg;
	}

	enum {IDD = IDD_TESTPG};

DECLARE_REGISTRY_RESOURCEID(IDR_TESTPG)

BEGIN_COM_MAP(Ctestpg) 
	COM_INTERFACE_ENTRY_IMPL(IPropertyPage)
END_COM_MAP()

BEGIN_MSG_MAP(Ctestpg)
	COMMAND_ID_HANDLER(IDC_SET, OnSet);
	COMMAND_ID_HANDLER(IDC_GET, OnGet);
	CHAIN_MSG_MAP(IPropertyPageImpl&lt;Ctestpg&gt;)
END_MSG_MAP()

	LRESULT OnSet(short , short nID , HWND hWnd, BOOL&amp; bHandled)
	{
		CComQIPtr&lt;ISymbolMap, &amp;IID_ISymbolMap&gt; pMap(m_ppUnk[0]);
		if (!pMap)
			return S_OK;

		TCHAR szSymbol[128];
		TCHAR szValue[128];
		GetDlgItemText(IDC_SYMBOL, szSymbol, 128);
		GetDlgItemText(IDC_VALUE, szValue, 128);
		pMap-&gt;Set(CComBSTR(szSymbol), CComBSTR(szValue));
		return 0;
	}

	LRESULT OnGet(short , short nID , HWND hWnd, BOOL&amp; bHandled)
	{
		CComQIPtr&lt;ISymbolMap, &amp;IID_ISymbolMap&gt; pMap(m_ppUnk[0]);
		if (!pMap)
			return S_OK;

		TCHAR szSymbol[128];
		GetDlgItemText(IDC_SYMBOL, szSymbol, 128);
		CComBSTR szValue;
		pMap-&gt;Get(CComBSTR(szSymbol), &amp;szValue);
		USES_CONVERSION;
		SetDlgItemText(IDC_VALUE, OLE2T(szValue));

		return 0;
	}

	STDMETHOD(Apply)(void)
	{
		ATLTRACE(_T(&quot;Ctestpg::Apply\n&quot;));
		if (m_hWnd == NULL)
			return S_OK;
		CComQIPtr&lt;ISymbolMap, &amp;IID_ISymbolMap&gt; pMap(m_ppUnk[0]);
		if (!pMap)
			return S_OK;

		TCHAR szSymbol[128];
		TCHAR szValue[128];
		GetDlgItemText(IDC_SYMBOL, szSymbol, 128);
		GetDlgItemText(IDC_VALUE, szValue, 128);
		pMap-&gt;Set(CComBSTR(szSymbol), CComBSTR(szValue));

		m_bDirty = FALSE;
		return S_OK;
	}
};

#endif //__TESTPG_H_
</font></pre>

<p><font size="2"><b>.rgs</b></font></p>

<pre><font size="3">HKCR
{
	testpg.testpg.1 = s 'testpg Class'
	{
		CLSID = s '{6992CC0C-472B-11D1-AA8C-000000000000}'
	}
	testpg.testpg = s 'testpg Class'
	{
		CLSID = s '{6992CC0C-472B-11D1-AA8C-000000000000}'
		CurVer = s 'testpg.testpg.1'
	}
	NoRemove CLSID
	{
		ForceRemove {6992CC0C-472B-11D1-AA8C-000000000000} = s 'testpg Class'
		{
			ForceRemove 'Programmable'
			InprocServer32 = s '%MODULE%'
			{
				val ThreadingModel = s 'Both'
			}
		}
	}
}

</font></pre>

<p><font size="2"><b>Dialog resource for the page</b></font></p>

<pre><font size="3">IDD_TESTPG DIALOG DISCARDABLE  0, 0, 271, 105
STYLE WS_CHILD
FONT 8, &quot;MS Sans Serif&quot;
BEGIN
    EDITTEXT        IDC_SYMBOL,22,24,40,14,ES_AUTOHSCROLL
    LTEXT           &quot;Symbol&quot;,IDC_STATIC,22,8,24,8
    LTEXT           &quot;Value&quot;,IDC_STATIC,87,8,19,8
    EDITTEXT        IDC_VALUE,87,24,40,14,ES_AUTOHSCROLL
    PUSHBUTTON      &quot;Set&quot;,IDC_SET,22,49,40,14
    PUSHBUTTON      &quot;Get&quot;,IDC_GET,87,49,40,14
END</font></pre>

<p><font size="2"><b>String resources.</b></font></p>

<pre><font size="2">IDS_TITLEtestpg &quot;Title&quot;</font></pre>

<pre><font size="2">IDS_HELPFILEtestpg &quot;Help File Name&quot;</font></pre>

<pre><font size="2">IDS_DOCSTRINGtestpg &quot;Your Help String&quot;</font></pre>

<h1><font size="3"><strong><u>ISymbolMap</u></strong></font></h1>

<pre>[
    object,
    uuid(C6D58201-1FA3-11D0-BF1E-0000E8D0D146),
    helpstring(&quot;ISymbolMap Interface&quot;),
    pointer_default(unique)
]
interface ISymbolMap : IUnknown
{
    HRESULT Set([in] LPCOLESTR strSymbol, [in] LPCOLESTR strValue);
    HRESULT Get([in] LPCOLESTR strSymbol, [out, retval] BSTR* pstrValue);
    HRESULT Clear();
    HRESULT SetStatus(const CLSID* pclsid, BOOL bEnableOK);
};</pre>
</body>
</html>

⌨️ 快捷键说明

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