// TestActiveX2.cpp : CTestActiveX2App 및 DLL 등록의 구현입니다.

#include "stdafx.h"
#include "TestActiveX2.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


CTestActiveX2App theApp;

const GUID CDECL BASED_CODE _tlid =
		{ 0x5D8D48EB, 0x93B1, 0x4EFC, { 0x9A, 0xB2, 0x4A, 0x87, 0xCE, 0x3D, 0xC7, 0x7A } };
const WORD _wVerMajor = 1;
const WORD _wVerMinor = 0;



// CTestActiveX2App::InitInstance - DLL 초기화입니다.

BOOL CTestActiveX2App::InitInstance()
{
	BOOL bInit = COleControlModule::InitInstance();

	if (bInit)
	{
		// TODO: 여기에 직접 작성한 모듈 초기화 코드를 추가합니다.
	}

	return bInit;
}



// CTestActiveX2App::ExitInstance - DLL 종료입니다.

int CTestActiveX2App::ExitInstance()
{
	// TODO: 여기에 직접 작성한 모듈 종료 코드를 추가합니다.

	return COleControlModule::ExitInstance();
}



// DllRegisterServer - 시스템 레지스트리에 항목을 추가합니다.

STDAPI DllRegisterServer(void)
{
	AFX_MANAGE_STATE(_afxModuleAddrThis);

	if (!AfxOleRegisterTypeLib(AfxGetInstanceHandle(), _tlid))
		return ResultFromScode(SELFREG_E_TYPELIB);

	if (!COleObjectFactoryEx::UpdateRegistryAll(TRUE))
		return ResultFromScode(SELFREG_E_CLASS);

	return NOERROR;
}



// DllUnregisterServer - 시스템 레지스트리에서 항목을 제거합니다.

STDAPI DllUnregisterServer(void)
{
	AFX_MANAGE_STATE(_afxModuleAddrThis);

	if (!AfxOleUnregisterTypeLib(_tlid, _wVerMajor, _wVerMinor))
		return ResultFromScode(SELFREG_E_TYPELIB);

	if (!COleObjectFactoryEx::UpdateRegistryAll(FALSE))
		return ResultFromScode(SELFREG_E_CLASS);

	return NOERROR;
}
