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

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

?? handshake.cpp

?? windows核心編程
?? CPP
字號:
/******************************************************************************
Module:  Handshake.cpp
Notices: Copyright (c) 2000 Jeffrey Richter
******************************************************************************/


#include "..\CmnHdr.h"     /* See Appendix A. */
#include <windowsx.h>
#include <tchar.h>
#include <process.h>       // For beginthreadex
#include "Resource.h"


///////////////////////////////////////////////////////////////////////////////


// This event is signaled when the client has a request for the server
HANDLE g_hevtRequestSubmitted;

// This event is signaled when the server has a result for the client
HANDLE g_hevtResultReturned;

// The buffer shared between the client and server threads
TCHAR  g_szSharedRequestAndResultBuffer[1024];

// The special value sent from the client that causes the 
// server thread to terminate cleanly.
TCHAR  g_szServerShutdown[] = TEXT("Server Shutdown");


///////////////////////////////////////////////////////////////////////////////


// This is the code executed by the server thread
DWORD WINAPI ServerThread(PVOID pvParam) {

   // Assume that the server thread is to run forever
   BOOL fShutdown = FALSE;

   while (!fShutdown) {

      // Wait for the client to submit a request
      WaitForSingleObject(g_hevtRequestSubmitted, INFINITE);

      // Check to see if the client wants the server to terminate
      fShutdown = 
         (lstrcmpi(g_szSharedRequestAndResultBuffer, g_szServerShutdown) == 0);

      if (!fShutdown) {
         // Process the client's request (reverse the string)
         _tcsrev(g_szSharedRequestAndResultBuffer);
      }

      // Let the client process the request's result
      SetEvent(g_hevtResultReturned);
   }

   // The client wants us to shutdown, exit
   return(0);
}


///////////////////////////////////////////////////////////////////////////////


BOOL Dlg_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam) {

   chSETDLGICONS(hwnd, IDI_HANDSHAKE);

   // Initialize the edit control with some test data request
   Edit_SetText(GetDlgItem(hwnd, IDC_REQUEST), TEXT("Some test data"));

   return(TRUE);
}


///////////////////////////////////////////////////////////////////////////////


void Dlg_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify) {

   switch (id) {

      case IDCANCEL:
         EndDialog(hwnd, id);
         break;

      case IDC_SUBMIT:  // Submit a request to the server thread
      
         // Copy the request string into the shared data buffer
         Edit_GetText(GetDlgItem(hwnd, IDC_REQUEST), 
            g_szSharedRequestAndResultBuffer, 
            chDIMOF(g_szSharedRequestAndResultBuffer));

         // Let the server thread know that a request is ready in the buffer
         SetEvent(g_hevtRequestSubmitted);

         // Wait for the server to process the request and give us the result
         WaitForSingleObject(g_hevtResultReturned, INFINITE);

         // Let the user know the result
         Edit_SetText(GetDlgItem(hwnd, IDC_RESULT), 
            g_szSharedRequestAndResultBuffer);

         break;
   }
}


///////////////////////////////////////////////////////////////////////////////


INT_PTR WINAPI Dlg_Proc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
   
   switch (uMsg) {
      chHANDLE_DLGMSG(hwnd, WM_INITDIALOG, Dlg_OnInitDialog);
      chHANDLE_DLGMSG(hwnd, WM_COMMAND,    Dlg_OnCommand);
   }

   return(FALSE);
}


///////////////////////////////////////////////////////////////////////////////


int WINAPI _tWinMain(HINSTANCE hinstExe, HINSTANCE, PTSTR pszCmdLine, int) {

   // Create & initialize the 2 nonsignaled, auto-reset events
   g_hevtRequestSubmitted = CreateEvent(NULL, FALSE, FALSE, NULL);
   g_hevtResultReturned   = CreateEvent(NULL, FALSE, FALSE, NULL);

   // Spawn the server thread
   DWORD dwThreadID;
   HANDLE hThreadServer = chBEGINTHREADEX(NULL, 0, ServerThread, NULL, 
      0, &dwThreadID);

   // Execute the client thread's user-interface
   DialogBox(hinstExe, MAKEINTRESOURCE(IDD_HANDSHAKE), NULL, Dlg_Proc);

   // The client's UI is closing, have the server thread shutdown
   lstrcpy(g_szSharedRequestAndResultBuffer, g_szServerShutdown);
   SetEvent(g_hevtRequestSubmitted);

   // Wait for the server thread to acknowledge the shutdown AND
   // wait for the server thread to fully terminate
   HANDLE h[2];
   h[0] = g_hevtResultReturned;
   h[1] = hThreadServer;
   WaitForMultipleObjects(2, h, TRUE, INFINITE);

   // Properly clean up everything
   CloseHandle(hThreadServer);      
   CloseHandle(g_hevtRequestSubmitted);      
   CloseHandle(g_hevtResultReturned);      

   // The client thread terminates with the whole process
   return(0);
}


//////////////////////////////// End of File //////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
夜夜嗨av一区二区三区中文字幕| 国产精品一二三在| 国产米奇在线777精品观看| av电影在线观看一区| 欧美一区二区三区四区高清| 国产精品麻豆一区二区| 日韩va亚洲va欧美va久久| bt7086福利一区国产| 日韩午夜在线影院| 亚洲与欧洲av电影| 懂色av噜噜一区二区三区av| 欧美高清性hdvideosex| 亚洲人成精品久久久久久| 韩国毛片一区二区三区| 精品视频资源站| 中文字幕在线一区二区三区| 狠狠狠色丁香婷婷综合激情| 欧美一区二区三级| 亚洲制服丝袜av| 91小视频在线免费看| 国产亚洲欧美激情| 美女免费视频一区| 91精品国产一区二区人妖| 一区二区三区欧美在线观看| 成人app软件下载大全免费| 精品国产sm最大网站免费看| 奇米777欧美一区二区| 欧美日韩国产精选| 亚洲一二三级电影| 91久久国产最好的精华液| 17c精品麻豆一区二区免费| 成人性生交大合| 亚洲国产精品黑人久久久| 国产精品一区二区无线| www国产成人免费观看视频 深夜成人网| 日韩av不卡在线观看| 69堂成人精品免费视频| 五月婷婷久久丁香| 欧美日韩精品久久久| 亚洲第一主播视频| 欧美丰满少妇xxxbbb| 日本最新不卡在线| 欧美一区二区啪啪| 国产一区视频导航| 精品精品欲导航| 国产一区二区三区免费播放| 久久色.com| 高潮精品一区videoshd| 国产精品五月天| 色网站国产精品| 亚洲国产成人91porn| 91精品在线观看入口| 裸体健美xxxx欧美裸体表演| 日韩欧美在线1卡| 粉嫩欧美一区二区三区高清影视 | 亚洲一区在线观看视频| 欧美性做爰猛烈叫床潮| 日韩高清不卡一区二区三区| 日韩欧美一区中文| 国产成人av影院| 一区二区理论电影在线观看| 7777精品伊人久久久大香线蕉最新版| 蜜臀91精品一区二区三区 | 日本午夜精品视频在线观看 | 一区二区三区欧美激情| 欧美日韩亚洲另类| 麻豆精品一二三| 中文字幕一区二区三区蜜月| 欧美日韩在线播| 国产xxx精品视频大全| 一区二区三区在线观看国产 | 日韩av电影天堂| 日本一区二区三区电影| 欧美亚洲丝袜传媒另类| 极品尤物av久久免费看| 亚洲精品国产一区二区精华液 | 色综合天天综合色综合av| 亚洲成精国产精品女| 久久色在线视频| 欧美无人高清视频在线观看| 国产乱码一区二区三区| 亚洲午夜免费电影| 国产欧美日韩亚州综合| 欧美精品黑人性xxxx| av色综合久久天堂av综合| 日本欧美一区二区| 亚洲欧美福利一区二区| 久久婷婷成人综合色| 欧美日本一区二区在线观看| 成人av集中营| 色综合久久88色综合天天 | 亚洲男同性视频| 精品国产伦理网| 欧美日韩国产片| 在线这里只有精品| 高清不卡一二三区| 国产一区二区女| 麻豆精品久久久| 日韩国产精品大片| 亚洲综合免费观看高清在线观看 | 欧美videossexotv100| 一本一道久久a久久精品综合蜜臀| 国产伦理精品不卡| 美国av一区二区| 日韩精品一区第一页| 亚洲影视在线播放| 国产精品久久久久久久久快鸭| 精品国产乱码久久久久久老虎| 欧美久久婷婷综合色| 欧洲另类一二三四区| 97se亚洲国产综合自在线 | 国产精品婷婷午夜在线观看| 精品国产1区二区| 欧美刺激脚交jootjob| 欧美一区二区三区喷汁尤物| 欧美日韩国产首页| 欧美日韩精品一区二区三区四区 | 一区二区三区四区国产精品| 中文字幕一区视频| 1区2区3区精品视频| 亚洲欧洲日韩av| 亚洲另类色综合网站| 亚洲久本草在线中文字幕| 亚洲精品老司机| 亚洲福利国产精品| 日本伊人色综合网| 美女网站一区二区| 国精产品一区一区三区mba视频| 国产自产v一区二区三区c| 国产综合一区二区| 成人综合婷婷国产精品久久免费| 成人国产精品免费观看动漫| www.亚洲激情.com| 在线欧美日韩国产| 日韩一区二区三区观看| 精品毛片乱码1区2区3区| 欧美激情一区二区三区蜜桃视频| 中文字幕的久久| 亚洲国产综合视频在线观看| 91九色02白丝porn| 欧美三日本三级三级在线播放| 欧美日韩国产色站一区二区三区| 3751色影院一区二区三区| 精品三级在线看| 中文字幕欧美三区| 亚洲高清久久久| 国产呦萝稀缺另类资源| 色综合久久久久久久| 欧美日韩成人在线一区| 久久久久久久综合色一本| 成人免费在线播放视频| 亚洲aⅴ怡春院| 国产精品亚洲а∨天堂免在线| 93久久精品日日躁夜夜躁欧美| 91精品国产丝袜白色高跟鞋| 久久精品国产秦先生| 午夜精品久久久久久久| 国产在线精品一区二区不卡了| av不卡免费在线观看| 欧美一区二区三区性视频| 亚洲国产精品精华液2区45| 亚洲国产一区在线观看| 国产成人免费网站| 欧美日韩免费视频| 日本一区二区视频在线| 日韩精品一卡二卡三卡四卡无卡| 国产精品一级黄| 91精品国产欧美一区二区18 | 91高清视频免费看| 日韩免费视频一区| 亚洲免费av高清| 国产呦精品一区二区三区网站| 欧美日韩亚洲另类| 自拍偷自拍亚洲精品播放| 狠狠色狠狠色合久久伊人| 欧美性生交片4| 17c精品麻豆一区二区免费| 国产在线播放一区三区四| 欧美精品丝袜中出| 亚洲欧美一区二区久久| 高清av一区二区| 久久九九国产精品| 日本不卡一二三区黄网| 在线观看国产91| 中文字幕字幕中文在线中不卡视频| 国产在线精品一区二区不卡了 | 日韩精品一区二区在线| 亚洲自拍偷拍av| 91影院在线免费观看| 中文在线免费一区三区高中清不卡| 免费成人美女在线观看.| 欧美午夜精品一区二区蜜桃| 亚洲欧美日韩小说| 99精品欧美一区二区三区小说| 国产欧美一二三区| 成人做爰69片免费看网站| 久久精品无码一区二区三区| 国精产品一区一区三区mba桃花| 日韩欧美三级在线| 激情av综合网|