亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? root.cpp

?? Compulsary Library for Visual C++ 6.0, Visual C++ 2005, Visual Studio.net
?? CPP
字號:
// [!output PROJECT_NAME].cpp : main source file for [!output PROJECT_NAME].exe
//

#include "stdafx.h"
[!if !WTL_USE_CPP_FILES]

#include <atlframe.h>
#include <atlctrls.h>
#include <atldlgs.h>
[!endif]

#include "resource.h"

[!if WTL_COM_SERVER]
// Note: Proxy/Stub Information
//		To build a separate proxy/stub DLL, 
//		run nmake -f [!output PROJECT_NAME]ps.mk in the project directory.
#include "initguid.h"
#include "[!output PROJECT_NAME].h"
#include "[!output PROJECT_NAME]_i.c"

[!endif]
[!if WTL_USE_VIEW]
#include "[!output WTL_VIEW_FILE].h"
[!endif]
[!if !WTL_APPTYPE_DLG_MODAL]
#include "aboutdlg.h"
[!endif]
[!if WTL_APPTYPE_DLG]
#include "[!output WTL_MAINDLG_FILE].h"
[!else]
#include "[!output WTL_FRAME_FILE].h"
[!endif]
[!if WTL_COM_SERVER]

CServerAppModule _Module;

BEGIN_OBJECT_MAP(ObjectMap)
END_OBJECT_MAP()
[!else]

CAppModule _Module;
[!endif]
[!if WTL_APPTYPE_DLG && !WTL_APPTYPE_DLG_MODAL]

int Run(LPTSTR /*lpstrCmdLine*/ = NULL, int nCmdShow = SW_SHOWNORMAL)
{
	CMessageLoop theLoop;
	_Module.AddMessageLoop(&theLoop);

	[!output WTL_MAINDLG_CLASS] dlgMain;

	if(dlgMain.Create(NULL) == NULL)
	{
		ATLTRACE(_T("Main dialog creation failed!\n"));
		return 0;
	}

[!if WTL_COM_SERVER]
	_Module.Lock();
[!endif]
	dlgMain.ShowWindow(nCmdShow);

	int nRet = theLoop.Run();

	_Module.RemoveMessageLoop();
	return nRet;
}
[!endif]
[!if !WTL_APPTYPE_DLG && WTL_APPTYPE_MTSDI]

class C[!output SAFE_PROJECT_NAME]ThreadManager
{
public:
	// thread init param
	struct _RunData
	{
		LPTSTR lpstrCmdLine;
		int nCmdShow;
	};

	// thread proc
	static DWORD WINAPI RunThread(LPVOID lpData)
	{
		CMessageLoop theLoop;
		_Module.AddMessageLoop(&theLoop);

		_RunData* pData = (_RunData*)lpData;
		[!output WTL_FRAME_CLASS] wndFrame;

		if(wndFrame.CreateEx() == NULL)
		{
			ATLTRACE(_T("Frame window creation failed!\n"));
			return 0;
		}

[!if WTL_COM_SERVER]
		_Module.Lock();
[!endif]
		wndFrame.ShowWindow(pData->nCmdShow);
		::SetForegroundWindow(wndFrame);	// Win95 needs this
		delete pData;

		int nRet = theLoop.Run();

		_Module.RemoveMessageLoop();
		return nRet;
	}

	DWORD m_dwCount;
	HANDLE m_arrThreadHandles[MAXIMUM_WAIT_OBJECTS - 1];

	C[!output SAFE_PROJECT_NAME]ThreadManager() : m_dwCount(0)
	{ }

// Operations
	DWORD AddThread(LPTSTR lpstrCmdLine, int nCmdShow)
	{
		if(m_dwCount == (MAXIMUM_WAIT_OBJECTS - 1))
		{
			::MessageBox(NULL, _T("ERROR: Cannot create ANY MORE threads!!!"), _T("[!output PROJECT_NAME]"), MB_OK);
			return 0;
		}

		_RunData* pData = new _RunData;
		pData->lpstrCmdLine = lpstrCmdLine;
		pData->nCmdShow = nCmdShow;
		DWORD dwThreadID;
		HANDLE hThread = ::CreateThread(NULL, 0, RunThread, pData, 0, &dwThreadID);
		if(hThread == NULL)
		{
			::MessageBox(NULL, _T("ERROR: Cannot create thread!!!"), _T("[!output PROJECT_NAME]"), MB_OK);
			return 0;
		}

		m_arrThreadHandles[m_dwCount] = hThread;
		m_dwCount++;
		return dwThreadID;
	}

	void RemoveThread(DWORD dwIndex)
	{
		::CloseHandle(m_arrThreadHandles[dwIndex]);
		if(dwIndex != (m_dwCount - 1))
			m_arrThreadHandles[dwIndex] = m_arrThreadHandles[m_dwCount - 1];
		m_dwCount--;
	}

	int Run(LPTSTR lpstrCmdLine, int nCmdShow)
	{
		MSG msg;
		// force message queue to be created
		::PeekMessage(&msg, NULL, WM_USER, WM_USER, PM_NOREMOVE);

		AddThread(lpstrCmdLine, nCmdShow);

		int nRet = m_dwCount;
		DWORD dwRet;
		while(m_dwCount > 0)
		{
			dwRet = ::MsgWaitForMultipleObjects(m_dwCount, m_arrThreadHandles, FALSE, INFINITE, QS_ALLINPUT);

			if(dwRet == 0xFFFFFFFF)
			{
				::MessageBox(NULL, _T("ERROR: Wait for multiple objects failed!!!"), _T("[!output PROJECT_NAME]"), MB_OK);
			}
			else if(dwRet >= WAIT_OBJECT_0 && dwRet <= (WAIT_OBJECT_0 + m_dwCount - 1))
			{
				RemoveThread(dwRet - WAIT_OBJECT_0);
			}
			else if(dwRet == (WAIT_OBJECT_0 + m_dwCount))
			{
				if(::PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
				{
					if(msg.message == WM_USER)
						AddThread(_T(""), SW_SHOWNORMAL);
				}
			}
			else
			{
				::MessageBeep((UINT)-1);
			}
		}

		return nRet;
	}
};
[!endif]
[!if !WTL_APPTYPE_DLG && !WTL_APPTYPE_MTSDI]

int Run(LPTSTR /*lpstrCmdLine*/ = NULL, int nCmdShow = SW_SHOWNORMAL)
{
	CMessageLoop theLoop;
	_Module.AddMessageLoop(&theLoop);

	[!output WTL_FRAME_CLASS] wndMain;

	if(wndMain.CreateEx() == NULL)
	{
		ATLTRACE(_T("Main window creation failed!\n"));
		return 0;
	}

[!if WTL_COM_SERVER]
	_Module.Lock();
[!endif]
	wndMain.ShowWindow(nCmdShow);

	int nRet = theLoop.Run();

	_Module.RemoveMessageLoop();
	return nRet;
}
[!endif]

[!if !WTL_APPTYPE_DLG_MODAL]
int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPTSTR lpstrCmdLine, int nCmdShow)
[!else]
int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPTSTR /*lpstrCmdLine*/, int /*nCmdShow*/)
[!endif]
{
[!if WTL_USE_SINGLE_APP_INSTANCE]
	HRESULT hRes = [!output WTL_FRAME_CLASS]::ActivatePreviousInstance(hInstance);
	if(FAILED(hRes) || S_FALSE == hRes)
	{
		return hRes;
	}

	hRes = ::CoInitializeEx(NULL, COINIT_MULTITHREADED);
[!else]
	HRESULT hRes = ::CoInitializeEx(NULL, COINIT_MULTITHREADED);
[!endif]
	ATLASSERT(SUCCEEDED(hRes));

	// Calling AtlInitCommonControls is not necessary to utilize picture,
	// static text, edit box, group box, button, check box, radio button, 
	// combo box, list box, or the horizontal and vertical scroll bars.
	// Calling AtlInitCommonControls with 0 is required to utilize the spin, 
	// progress, slider, list, tree, and tab controls.
	// Adding the ICC_DATE_CLASSES flag is required to initialize the 
	// date time picker and month calendar controls.
	// Add additional flags to support additoinal controls not mentioned above.
	AtlInitCommonControls(ICC_DATE_CLASSES);
[!if WTL_COM_SERVER]

	hRes = _Module.Init(ObjectMap, hInstance);
	ATLASSERT(SUCCEEDED(hRes));

[!else]

	hRes = _Module.Init(NULL, hInstance);
	ATLASSERT(SUCCEEDED(hRes));

[!endif]
[!if WTL_ENABLE_AX]
	AtlAxWinInit();

[!endif]
[!if WTL_COM_SERVER]
	// Parse command line, register or unregister or run the server
	int nRet = 0;
	TCHAR szTokens[] = _T("-/");
	bool bRun = true;
	bool bAutomation = false;

	LPCTSTR lpszToken = _Module.FindOneOf(::GetCommandLine(), szTokens);
	while(lpszToken != NULL)
	{
		if(lstrcmpi(lpszToken, _T("UnregServer")) == 0)
		{
			_Module.UpdateRegistryFromResource(IDR_[!output UPPERCASE_SAFE_PROJECT_NAME], FALSE);
			nRet = _Module.UnregisterServer(TRUE);
			bRun = false;
			break;
		}
		else if(lstrcmpi(lpszToken, _T("RegServer")) == 0)
		{
			_Module.UpdateRegistryFromResource(IDR_[!output UPPERCASE_SAFE_PROJECT_NAME], TRUE);
			nRet = _Module.RegisterServer(TRUE);
			bRun = false;
			break;
		}
		else if((lstrcmpi(lpszToken, _T("Automation")) == 0) ||
			(lstrcmpi(lpszToken, _T("Embedding")) == 0))
		{
			bAutomation = true;
			break;
		}
		lpszToken = _Module.FindOneOf(lpszToken, szTokens);
	}

	if(bRun)
	{
		_Module.StartMonitor();
		hRes = _Module.RegisterClassObjects(CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE | REGCLS_SUSPENDED);
		ATLASSERT(SUCCEEDED(hRes));
		hRes = ::CoResumeClassObjects();
		ATLASSERT(SUCCEEDED(hRes));

		if(bAutomation)
		{
			CMessageLoop theLoop;
			nRet = theLoop.Run();
		}
		else
[!if WTL_APPTYPE_DLG_MODAL]
		{
			[!output WTL_MAINDLG_CLASS] dlgMain;
			nRet = dlgMain.DoModal();
		}
[!else]
[!if WTL_APPTYPE_MTSDI]
		{
			C[!output SAFE_PROJECT_NAME]ThreadManager mgr;
			nRet = mgr.Run(lpstrCmdLine, nCmdShow);
		}
[!else]
		{
			nRet = Run(lpstrCmdLine, nCmdShow);
		}
[!endif]
[!endif]

		_Module.RevokeClassObjects();
		::Sleep(_Module.m_dwPause);
	}
[!else]
[!if WTL_APPTYPE_DLG_MODAL]
	int nRet = 0;
	// BLOCK: Run application
	{
		[!output WTL_MAINDLG_CLASS] dlgMain;
		nRet = dlgMain.DoModal();
	}
[!else]
[!if WTL_APPTYPE_MTSDI]
	int nRet = 0;
	// BLOCK: Run application
	{
		C[!output SAFE_PROJECT_NAME]ThreadManager mgr;
		nRet = mgr.Run(lpstrCmdLine, nCmdShow);
	}
[!else]
	int nRet = Run(lpstrCmdLine, nCmdShow);
[!endif]
[!endif]
[!endif]
[!if WTL_USE_VIEW]
[!endif]

	_Module.Term();
	::CoUninitialize();

	return nRet;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日本韩国| 国产东北露脸精品视频| 麻豆精品视频在线观看视频| 成人一区二区三区视频| 欧美亚洲日本一区| 国产亚洲自拍一区| 日韩国产在线一| 99热这里都是精品| 久久久另类综合| 日本不卡一区二区三区高清视频| www.久久精品| 久久尤物电影视频在线观看| 亚洲成av人片一区二区| 91色婷婷久久久久合中文| 久久久久久综合| 极品少妇xxxx精品少妇| 91麻豆精品久久久久蜜臀| 亚洲猫色日本管| 波波电影院一区二区三区| 久久久久综合网| 极品美女销魂一区二区三区免费| 在线电影国产精品| 亚洲成av人片在线| 欧美无砖专区一中文字| 亚洲综合丝袜美腿| 在线一区二区三区四区五区| 中文字幕亚洲一区二区va在线| 国产盗摄视频一区二区三区| 精品国产凹凸成av人导航| 麻豆91精品91久久久的内涵| 777午夜精品免费视频| 婷婷开心久久网| 欧美色国产精品| 五月婷婷欧美视频| 51精品视频一区二区三区| 婷婷一区二区三区| 日韩欧美资源站| 麻豆91精品91久久久的内涵| 精品国产一区二区三区久久久蜜月| 午夜精品福利久久久| 欧美年轻男男videosbes| 图片区小说区国产精品视频| 欧美日韩免费一区二区三区| 婷婷综合久久一区二区三区| 91精品国产乱| 国产麻豆视频精品| 国产精品女上位| 色综合天天性综合| 亚洲国产aⅴ天堂久久| 欧美福利电影网| 精品综合久久久久久8888| 久久噜噜亚洲综合| 91一区二区三区在线观看| 亚洲精品国产精华液| 欧美日韩一区二区在线观看| 秋霞成人午夜伦在线观看| 精品国产免费久久| 成人激情免费网站| 午夜伊人狠狠久久| 久久久久久久久免费| www.日韩在线| 丝袜美腿亚洲色图| 国产欧美一区在线| 欧美日韩国产高清一区二区| 久久精品久久精品| 亚洲天堂网中文字| 夜夜嗨av一区二区三区网页| 在线精品国精品国产尤物884a| 奇米888四色在线精品| 国产人成一区二区三区影院| 欧美午夜精品久久久久久超碰| 麻豆精品精品国产自在97香蕉| 国产精品国产成人国产三级| 欧美福利视频导航| a4yy欧美一区二区三区| 蜜臀av在线播放一区二区三区| 国产精品色噜噜| 欧美精品乱人伦久久久久久| 国产精品 欧美精品| 亚洲成在线观看| 中文天堂在线一区| 欧美一区二区三区小说| 97久久超碰国产精品电影| 麻豆极品一区二区三区| 有坂深雪av一区二区精品| 久久综合999| 在线播放视频一区| 91麻豆123| 懂色av一区二区三区免费观看| 天天影视网天天综合色在线播放| 国产精品久久久久影院老司| 欧美一区二区三区不卡| 91小视频免费看| 国产成人免费在线| 久久精品国产免费看久久精品| 亚洲人成影院在线观看| 精品国产一区二区精华| 欧美肥妇bbw| 在线观看视频欧美| 成人99免费视频| 国产成人精品一区二区三区网站观看| 婷婷六月综合亚洲| 亚洲一区二区三区四区在线| 国产精品久99| 国产精品青草综合久久久久99| 日韩一卡二卡三卡四卡| 欧美日韩高清一区| 欧美日韩国产天堂| 欧美日韩一区二区欧美激情| 日本大香伊一区二区三区| 成人免费三级在线| 成人综合婷婷国产精品久久免费| 国产在线精品一区二区不卡了| 久久国产视频网| 久久精品久久久精品美女| 久久精品国产精品亚洲综合| 麻豆视频一区二区| 久久成人免费网| 精品亚洲porn| 丁香婷婷综合五月| av网站免费线看精品| 99re成人在线| 色婷婷精品久久二区二区蜜臂av| 91亚洲国产成人精品一区二区三 | 国产欧美1区2区3区| 久久亚洲精精品中文字幕早川悠里| 日韩一区二区免费在线观看| 欧美一级xxx| 久久午夜国产精品| 国产日韩欧美一区二区三区综合| 国产欧美精品在线观看| 国产欧美视频一区二区| 国产精品国产三级国产普通话三级 | 国内外成人在线| 国产精品一色哟哟哟| 粉嫩av亚洲一区二区图片| 国产盗摄女厕一区二区三区 | 久久久久久久久蜜桃| 中文字幕免费不卡| 亚洲蜜臀av乱码久久精品| 亚洲动漫第一页| 麻豆高清免费国产一区| 成人免费看视频| 欧美韩国一区二区| 亚洲日本在线观看| 日韩国产欧美视频| 成人免费毛片高清视频| 欧美私人免费视频| 久久日韩精品一区二区五区| 国产精品久久久久久久久晋中 | 亚洲一卡二卡三卡四卡| 老司机一区二区| 成人性色生活片| 欧美区一区二区三区| 日本一区二区免费在线| 午夜精品久久久久久不卡8050| 九九国产精品视频| 色婷婷精品久久二区二区蜜臀av| 91精品国产综合久久久久久久| 国产日韩欧美一区二区三区乱码 | 紧缚奴在线一区二区三区| 色综合咪咪久久| 久久综合久久鬼色| 一区二区在线观看免费视频播放| 老司机午夜精品99久久| 色婷婷亚洲精品| 久久精品亚洲一区二区三区浴池 | 午夜精品一区二区三区电影天堂| 日韩不卡在线观看日韩不卡视频| 国产白丝精品91爽爽久久| 欧美男男青年gay1069videost| 亚洲国产精品99久久久久久久久| 午夜欧美大尺度福利影院在线看| 国产a视频精品免费观看| 3d动漫精品啪啪1区2区免费| 亚洲男女毛片无遮挡| 国产精品一二三| 日韩三级视频中文字幕| 亚洲一区二区三区四区在线观看| 国产精品亚洲人在线观看| 欧美一区二区三区免费大片| 亚洲欧洲精品一区二区精品久久久| 麻豆国产欧美一区二区三区| 欧美色中文字幕| 亚洲男女一区二区三区| k8久久久一区二区三区| 久久精品亚洲麻豆av一区二区 | 91在线视频18| 国产片一区二区| 国产精品一区免费视频| 精品日韩在线观看| 麻豆一区二区三区| 制服丝袜av成人在线看| 亚洲va韩国va欧美va| 91成人看片片| 亚洲福中文字幕伊人影院| 欧美在线免费观看视频| 一区二区三区精品在线| 在线中文字幕不卡| 亚洲一区二区av在线|