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

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

?? outproc.cpp

?? COM技術內幕配書源碼
?? CPP
字號:
#include <windows.h>
#include <stdlib.h>

#include "CUnknown.h"
#include "CFactory.h"
#include "Resource.h"

///////////////////////////////////////////////////////////
//
// Outproc.cpp
//   - the component server
//
HWND g_hWndListBox = NULL ;

BOOL InitWindow(int nCmdShow) ;
extern "C" LONG APIENTRY MainWndProc(HWND hWnd,
                                     UINT message,
                                     UINT wParam,
                                     LONG lParam) ;


//
// WinMain procedure
//
extern "C" int WINAPI WinMain(HINSTANCE hInstance, 
                              HINSTANCE hPrevInstance,
                              LPSTR lpCmdLine, 
                              int nCmdShow)
{
	// Controls whether UI is shown or not
	BOOL bUI = TRUE ;

	// If TRUE, don't loop.
	BOOL bExit = FALSE ;

	// Initialize the COM Library.
	HRESULT hr = CoInitialize(NULL) ;
	if (FAILED(hr))
	{
		return 0 ;
	}
   
   
	// Get Thread ID.
	CFactory::s_dwThreadID = ::GetCurrentThreadId() ;
	CFactory::s_hModule = hInstance ;

	// Read the command line.
	char szTokens[] = "-/" ;

	char* szToken = strtok(lpCmdLine, szTokens) ; 
	while (szToken != NULL)
	{
		if (_stricmp(szToken, "UnregServer") == 0)
		{
			CFactory::UnregisterAll() ;
			// We are done, so exit.
			bExit = TRUE ;
			bUI = FALSE ;
		}
		else if (_stricmp(szToken, "RegServer") == 0)
		{
			CFactory::RegisterAll() ;
			// We are done, so exit.
			bExit = TRUE ;
			bUI = FALSE ;
		}
		else if (_stricmp(szToken, "Embedding") == 0)
		{
			// Don't display a window if we are embedded.
			bUI = FALSE ;
			break ;
		}
		szToken = strtok(NULL, szTokens) ;
	}

	// If the user started us, then show UI.
	if (bUI)
	{
		if (!InitWindow(nCmdShow))
		{
			// Exit since we can't show UI.
			bExit = TRUE ;
		}
		else
		{
			::InterlockedIncrement(&CFactory::s_cServerLocks) ;
		}
	}

	if (!bExit)
	{
		// Register all of the class factories.
		CFactory::StartFactories() ;

		// Wait for shutdown.
		MSG msg ;
		while (::GetMessage(&msg, 0, 0, 0))
		{
			::DispatchMessage(&msg) ;
		}

		// Unregister the class factories.
		CFactory::StopFactories() ;
	}

	// Uninitialize the COM Library.
	CoUninitialize() ;
	return 0 ;
}


//
// Initialize window
//
BOOL InitWindow(int nCmdShow) 
{
	// Fill in window class structure with parameters
	// that describe the main window.
	WNDCLASS wcListview ;
	wcListview.style = 0 ;                     
	wcListview.lpfnWndProc = (WNDPROC)MainWndProc ; 
	wcListview.cbClsExtra = 0 ;              
	wcListview.cbWndExtra = 0 ;              
	wcListview.hInstance = CFactory::s_hModule ;
	wcListview.hIcon = ::LoadIcon(CFactory::s_hModule,
	                              MAKEINTRESOURCE(IDC_ICON)) ;
	wcListview.hCursor = ::LoadCursor(NULL, IDC_ARROW) ;
	wcListview.hbrBackground = ::GetStockObject(WHITE_BRUSH) ; 
	wcListview.lpszMenuName = NULL ;  
	wcListview.lpszClassName = "MyServerWinClass" ;

	BOOL bResult = ::RegisterClass(&wcListview) ;
	if (!bResult)
	{
		return bResult ;
	}

	HWND hWndMain ;

	hWndMain = ::CreateWindow(
		"MyServerWinClass",
		"Component Server", 
		WS_OVERLAPPEDWINDOW,
		CW_USEDEFAULT, CW_USEDEFAULT,
		CW_USEDEFAULT, CW_USEDEFAULT,
		NULL,               
		NULL,               
		CFactory::s_hModule,          
		NULL) ;

	// If window could not be created, return "failure".
	if (!hWndMain)
	{
		return FALSE ;
	}

	// Make the window visible; update its client area;
	// and return "success".
	::ShowWindow(hWndMain, nCmdShow) ;
	::UpdateWindow(hWndMain) ;
	return TRUE ;
}

//
// Main window procedure
//
extern "C" LONG APIENTRY MainWndProc(
	HWND hWnd,                // window handle
	UINT message,             // type of message
	UINT wParam,              // additional information
	LONG lParam)              // additional information
{
	DWORD dwStyle ;

	switch (message) 
	{
	case WM_CREATE:
		{
			// Get size of main window
			CREATESTRUCT* pcs = (CREATESTRUCT*) lParam ;

			// Create a listbox for output.
			g_hWndListBox = ::CreateWindow(
				"LISTBOX",
				NULL, 
				WS_CHILD | WS_VISIBLE | LBS_USETABSTOPS
					| WS_VSCROLL | LBS_NOINTEGRALHEIGHT,
				0, 0, pcs->cx, pcs->cy,
				hWnd,               
				NULL,               
				CFactory::s_hModule,          
				NULL) ;
			if (g_hWndListBox  == NULL)
			{
				// Listbox not created.
				::MessageBox(NULL,
				             "Listbox not created!",
				             NULL,
				             MB_OK) ;
				return -1 ;
			}
		}
		break ;

	case WM_SIZE:
		::MoveWindow(g_hWndListBox, 0, 0,
			LOWORD(lParam), HIWORD(lParam), TRUE) ;
		break;

	case WM_DESTROY:          // message: window being destroyed
		if (CFactory::CanUnloadNow() == S_OK)
		{
			// Only post the quit message, if there is
			// no one using the program.
			::PostQuitMessage(0) ;
		}
		break ;

	case WM_CLOSE:
		// Decrement the lock count.
		::InterlockedDecrement(&CFactory::s_cServerLocks) ;

		// The list box is going away.
		g_hWndListBox = NULL ;

		//Fall through 
	default:
		return (DefWindowProc(hWnd, message, wParam, lParam)) ;
	}
	return 0 ;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃视频在线一区| 日韩女优电影在线观看| 国产欧美日韩三级| 亚洲一二三区不卡| 国产成人免费视频| 538在线一区二区精品国产| 国产精品美女久久久久aⅴ国产馆| 亚洲大片精品永久免费| kk眼镜猥琐国模调教系列一区二区| 欧美一区中文字幕| 亚洲最大色网站| 色综合久久中文综合久久97| 久久久www成人免费无遮挡大片| 天天影视网天天综合色在线播放| av一区二区三区| 国产日产欧产精品推荐色| 免费国产亚洲视频| 欧美撒尿777hd撒尿| 亚洲欧美成aⅴ人在线观看 | 亚洲国产日韩在线一区模特| 99精品国产热久久91蜜凸| 国产清纯美女被跳蛋高潮一区二区久久w| 日本91福利区| 欧美一区午夜视频在线观看| 日本不卡一区二区三区| 欧美日韩电影一区| 午夜精彩视频在线观看不卡| 欧美日韩精品一二三区| 亚洲福利视频一区二区| 欧美四级电影在线观看| 亚洲专区一二三| 91福利小视频| 亚洲国产aⅴ成人精品无吗| 欧美日韩成人综合天天影院| 亚洲国产精品天堂| 欧美日韩国产高清一区二区| 免费不卡在线观看| 欧美mv和日韩mv国产网站| 精品一区二区三区免费视频| 精品国产123| 东方欧美亚洲色图在线| 亚洲美女视频在线| 欧美日韩国产免费一区二区| 麻豆精品在线观看| 国产欧美精品在线观看| 99国产精品久| 日韩和欧美一区二区三区| 日韩情涩欧美日韩视频| 福利一区二区在线观看| 亚洲日本在线a| 欧美久久一二区| 国产一区二区三区在线观看精品| 中文字幕精品在线不卡| 91麻豆国产香蕉久久精品| 天天综合天天做天天综合| 精品美女被调教视频大全网站| 国产高清不卡一区| 亚洲综合成人在线视频| 日韩精品在线看片z| 成人性视频免费网站| 亚洲va欧美va人人爽午夜| 久久亚洲精精品中文字幕早川悠里 | 亚洲国产成人va在线观看天堂| 欧美精品vⅰdeose4hd| 国产精品99久久久久久宅男| 亚洲乱码国产乱码精品精的特点 | 亚洲久本草在线中文字幕| 欧美高清视频不卡网| 国产盗摄一区二区| 亚洲bdsm女犯bdsm网站| 国产香蕉久久精品综合网| 在线看国产日韩| 国产寡妇亲子伦一区二区| 亚洲成av人片在线| 国产精品视频看| 日韩欧美一区二区在线视频| 91麻豆福利精品推荐| 国产一区二区0| 五月天欧美精品| 综合久久国产九一剧情麻豆| 欧美变态tickle挠乳网站| 欧美体内she精视频| 成人综合激情网| 久久99国产精品麻豆| 亚洲黄色性网站| 日本一区二区动态图| 欧美电影免费观看高清完整版在线 | 亚洲综合网站在线观看| 欧美激情一区在线观看| 日韩欧美国产一区二区三区| 欧美日韩日日摸| va亚洲va日韩不卡在线观看| 国产乱码字幕精品高清av| 日韩国产高清影视| 午夜视频在线观看一区| 亚洲精品乱码久久久久久日本蜜臀| 久久人人爽人人爽| 亚洲欧洲av在线| 国产麻豆视频一区二区| 午夜精品久久久久影视| 亚洲欧美另类图片小说| 国产精品网站在线观看| 久久先锋资源网| 亚洲精品一区二区三区香蕉| 国产成人精品亚洲777人妖| 国产精品一级片在线观看| 日韩成人免费看| 亚洲一区免费视频| 亚洲美女免费视频| 亚洲免费观看高清完整版在线 | 国产精品一区在线观看你懂的| 久久电影网站中文字幕| 蜜臀91精品一区二区三区| 美国十次了思思久久精品导航| 日韩在线一二三区| 麻豆精品蜜桃视频网站| 精品综合久久久久久8888| 久久精品国产精品亚洲综合| 亚洲一区二区三区不卡国产欧美 | 精品国偷自产国产一区| 91麻豆精品国产91久久久更新时间 | 精品国产三级电影在线观看| 欧美一区二区视频在线观看2020 | 91精品国产一区二区三区 | 亚洲欧洲日韩综合一区二区| 国产精品国产三级国产普通话蜜臀| 国产欧美日韩三区| 亚洲天天做日日做天天谢日日欢| 中文字幕在线不卡视频| 亚洲精品菠萝久久久久久久| 亚洲午夜久久久久中文字幕久| 午夜精品福利久久久| 美女网站色91| 成人午夜在线免费| 国产午夜精品一区二区| 久久久亚洲综合| 最新国产精品久久精品| 亚洲黄色尤物视频| 久久精品噜噜噜成人av农村| 国产精品99久久久久久有的能看| www.欧美日韩| 91精品蜜臀在线一区尤物| 久久久三级国产网站| 一区二区三区在线观看国产| 视频一区二区三区在线| 风间由美性色一区二区三区| 欧亚洲嫩模精品一区三区| 欧美一二三区在线| 国产精品美女久久久久高潮| 天天色综合天天| 成人美女视频在线观看18| 欧美日韩国产另类一区| 国产欧美精品一区二区色综合朱莉| 亚洲综合久久av| 国产精品一二三四五| 91成人国产精品| 国产午夜亚洲精品羞羞网站| 亚洲成人动漫av| 97久久精品人人澡人人爽| 精品国产一区二区三区久久久蜜月 | 久久美女高清视频| 亚洲国产成人va在线观看天堂| 国产mv日韩mv欧美| 欧美一区二区在线视频| 一区二区三区在线视频免费| 国产主播一区二区三区| 精品视频一区二区不卡| 国产精品色哟哟网站| 国模套图日韩精品一区二区| 欧美另类一区二区三区| ...xxx性欧美| 国产盗摄视频一区二区三区| 欧美高清www午色夜在线视频| 中文字幕一区三区| 成人综合在线观看| 欧美精品一区二区三区视频| 蜜臀久久久99精品久久久久久| 欧美综合视频在线观看| 亚洲丝袜另类动漫二区| 福利一区二区在线| 久久综合色播五月| 蜜臀精品久久久久久蜜臀| 欧美放荡的少妇| 亚洲一区二区在线免费观看视频| 99久久精品国产麻豆演员表| 国产日韩av一区| 国产成人午夜精品5599 | 精品一区二区日韩| 欧美夫妻性生活| 亚洲成人精品一区二区| 91视频免费看| 亚洲精品乱码久久久久久黑人| 丁香激情综合五月| 国产精品传媒入口麻豆| 99久久精品国产毛片| 亚洲视频一区二区在线观看| 91色在线porny| 亚洲国产日韩av| 欧美老肥妇做.爰bbww| 日韩成人一级大片|