txtproviderds.h

来自「本书分为五个部分」· C头文件 代码 · 共 74 行

H
74
字号
// TxtProviderDS.h : CTxtProviderSource 的声明

#pragma once

#include "resource.h"       // 主符号
#include "TxtProviderRS.h"
#include "TxtProviderSess.h"


// CTxtProviderSource

class ATL_NO_VTABLE CTxtProviderSource : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CTxtProviderSource, &CLSID_TxtProvider>,
	public IDBCreateSessionImpl<CTxtProviderSource, CTxtProviderSession>,
	public IDBInitializeImpl<CTxtProviderSource>,
	public IDBPropertiesImpl<CTxtProviderSource>,
	public IPersistImpl<CTxtProviderSource>,
	public IInternalConnectionImpl<CTxtProviderSource>
{
public:
	DECLARE_PROTECT_FINAL_CONSTRUCT()

	HRESULT FinalConstruct()
	{
		return FInit();
	}
	
	void FinalRelease() 
	{
	}

DECLARE_REGISTRY_RESOURCEID(IDR_TXTPROVIDER)
BEGIN_COM_MAP(CTxtProviderSource)
	COM_INTERFACE_ENTRY(IDBCreateSession)
	COM_INTERFACE_ENTRY(IDBInitialize)
	COM_INTERFACE_ENTRY(IDBProperties)
	COM_INTERFACE_ENTRY(IPersist)
	COM_INTERFACE_ENTRY(IInternalConnection)
END_COM_MAP()

BEGIN_PROPSET_MAP(CTxtProviderSource)
	BEGIN_PROPERTY_SET(DBPROPSET_DATASOURCEINFO)
		PROPERTY_INFO_ENTRY(ACTIVESESSIONS)
		PROPERTY_INFO_ENTRY(DATASOURCEREADONLY)
		PROPERTY_INFO_ENTRY(BYREFACCESSORS)
		PROPERTY_INFO_ENTRY(OUTPUTPARAMETERAVAILABILITY)
		PROPERTY_INFO_ENTRY(PROVIDEROLEDBVER)
		PROPERTY_INFO_ENTRY(DSOTHREADMODEL)
		PROPERTY_INFO_ENTRY(SUPPORTEDTXNISOLEVELS)
		PROPERTY_INFO_ENTRY(USERNAME)
	END_PROPERTY_SET(DBPROPSET_DATASOURCEINFO)
	BEGIN_PROPERTY_SET(DBPROPSET_DBINIT)
		PROPERTY_INFO_ENTRY(AUTH_PASSWORD)
		PROPERTY_INFO_ENTRY(AUTH_PERSIST_SENSITIVE_AUTHINFO)
		PROPERTY_INFO_ENTRY(AUTH_USERID)
		PROPERTY_INFO_ENTRY(INIT_DATASOURCE)
		PROPERTY_INFO_ENTRY(INIT_HWND)
		PROPERTY_INFO_ENTRY(INIT_LCID)
		PROPERTY_INFO_ENTRY(INIT_LOCATION)
		PROPERTY_INFO_ENTRY(INIT_MODE)
		PROPERTY_INFO_ENTRY(INIT_PROMPT)
		PROPERTY_INFO_ENTRY(INIT_PROVIDERSTRING)
		PROPERTY_INFO_ENTRY(INIT_TIMEOUT)
	END_PROPERTY_SET(DBPROPSET_DBINIT)
	CHAIN_PROPERTY_SET(CTxtProviderSession)
	CHAIN_PROPERTY_SET(CTxtProviderCommand)
END_PROPSET_MAP()

public:
};

OBJECT_ENTRY_AUTO(__uuidof(TxtProvider), CTxtProviderSource)

⌨️ 快捷键说明

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