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

📄 creditserver.cpp

📁 Visual_C++[1].NET_Bible1 Visual_C++宝典书中的全部源码
💻 CPP
字号:
// CreditServer.cpp 
#include "stdafx.h"
#include "CreditServer_h.h"
#include "CreditObject.h"
#include "CreditObjectFactory.h"

extern long g_cComponents;
HMODULE g_hModule = NULL;

extern const GUID IID_ICreditVerification;
extern const CLSID CLSID_CreditVerification;

STDAPI DllCanUnloadNow() 
{
	if (g_cComponents == 0)
		return S_OK;
	else
		return S_FALSE;
}
 
STDAPI DllGetClassObject(const CLSID& clsid, 
	const IID& riid, void** ppv) 
{
	if (clsid != CLSID_CreditVerification)
		return CLASS_E_CLASSNOTAVAILABLE;

	CCreditObjectFactory* pFactory = new CCreditObjectFactory;
	if (pFactory == NULL)
		return E_OUTOFMEMORY;

	HRESULT hr = pFactory->QueryInterface(riid, ppv);
	pFactory->Release();
	return hr;
}
 
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReason, 
	void* lpReserved) 
{
	if (dwReason == DLL_PROCESS_ATTACH)
		g_hModule = hModule;
	return TRUE;
}

const char g_szNiceName[] = "Simplest Credit Verification Object";
const char g_szVerIndProgID[] = "CreditServer.CreditObject";
const char g_szProgID[] = "CreditServer.CreditObject.1";

#include "registry.h"

STDAPI DllRegisterServer() 
{
	return RegisterServer(g_hModule, CLSID_CreditVerification, 
		g_szNiceName, g_szVerIndProgID, g_szProgID);
}

STDAPI DllUnregisterServer() 
{
	return UnregisterServer(CLSID_CreditVerification, 
		g_szVerIndProgID, g_szProgID);
}

⌨️ 快捷键说明

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