这篇教程C++ CopyMemory函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中CopyMemory函数的典型用法代码示例。如果您正苦于以下问题:C++ CopyMemory函数的具体用法?C++ CopyMemory怎么用?C++ CopyMemory使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了CopyMemory函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: xf_rail_window_common//.........这里部分代码省略......... appWindow->clientOffsetY = windowState->clientOffsetY; } if (fieldFlags & WINDOW_ORDER_FIELD_CLIENT_AREA_SIZE) { appWindow->clientAreaWidth = windowState->clientAreaWidth; appWindow->clientAreaHeight = windowState->clientAreaHeight; } if (fieldFlags & WINDOW_ORDER_FIELD_WND_CLIENT_DELTA) { appWindow->windowClientDeltaX = windowState->windowClientDeltaX; appWindow->windowClientDeltaY = windowState->windowClientDeltaY; } if (fieldFlags & WINDOW_ORDER_FIELD_WND_RECTS) { if (appWindow->windowRects) { free(appWindow->windowRects); appWindow->windowRects = NULL; } appWindow->numWindowRects = windowState->numWindowRects; if (appWindow->numWindowRects) { appWindow->windowRects = (RECTANGLE_16*) calloc(appWindow->numWindowRects, sizeof(RECTANGLE_16)); if (!appWindow->windowRects) return FALSE; CopyMemory(appWindow->windowRects, windowState->windowRects, appWindow->numWindowRects * sizeof(RECTANGLE_16)); } } if (fieldFlags & WINDOW_ORDER_FIELD_VIS_OFFSET) { appWindow->visibleOffsetX = windowState->visibleOffsetX; appWindow->visibleOffsetY = windowState->visibleOffsetY; } if (fieldFlags & WINDOW_ORDER_FIELD_VISIBILITY) { if (appWindow->visibilityRects) { free(appWindow->visibilityRects); appWindow->visibilityRects = NULL; } appWindow->numVisibilityRects = windowState->numVisibilityRects; if (appWindow->numVisibilityRects) { appWindow->visibilityRects = (RECTANGLE_16*) calloc( appWindow->numVisibilityRects, sizeof(RECTANGLE_16)); if (!appWindow->visibilityRects) return FALSE; CopyMemory(appWindow->visibilityRects, windowState->visibilityRects, appWindow->numVisibilityRects * sizeof(RECTANGLE_16)); } }
开发者ID:99455125,项目名称:FreeRDP,代码行数:67,
示例2: switch//游戏场景bool CGameClientDlg::OnGameSceneMessage(BYTE cbGameStation, bool bLookonOther, const void * pBuffer, WORD wDataSize){ switch (cbGameStation) { case GS_FREE: //空闲状态 { //效验数据 if (wDataSize!=sizeof(CMD_S_StatusFree)) return false; CMD_S_StatusFree * pStatusFree=(CMD_S_StatusFree *)pBuffer; //设置控件 if (IsLookonMode()==false) { m_GameClientView.m_btStart.ShowWindow(SW_SHOW); m_GameClientView.m_btStart.SetFocus(); } //设置时间 if (IsLookonMode()==false) SetGameTimer(GetMeChairID(),IDI_START_GAME,30); return true; } case GS_PLAYING: //游戏状态 { //效验数据 if (wDataSize!=sizeof(CMD_S_StatusPlay)) return false; CMD_S_StatusPlay * pStatusPlay=(CMD_S_StatusPlay *)pBuffer; //下注信息 m_lMaxScore=pStatusPlay->lMaxScore; m_lCellScore=pStatusPlay->lCellScore; m_lTurnMaxScore=pStatusPlay->lTurnMaxScore; m_lTurnLessScore=pStatusPlay->lTurnLessScore; CopyMemory(m_lTableScore,pStatusPlay->lTableScore,sizeof(m_lTableScore)); //状态变量 m_wCurrentUser=pStatusPlay->wCurrentUser; m_bAddScore=(pStatusPlay->bAddScore==TRUE)?true:false; m_bShowHand=(pStatusPlay->bShowHand==TRUE)?true:false; CopyMemory(m_cbPlayStatus,pStatusPlay->cbPlayStatus,sizeof(m_cbPlayStatus)); //帐号名字 for (WORD i=0;i<GAME_PLAYER;i++) { const tagUserData * pUserData=GetUserData(i); if (pUserData!=NULL) lstrcpyn(m_szAccounts[i],pUserData->szName,CountArray(m_szAccounts[i])); } //设置界面 LONG lTableScore=0L; for (WORD i=0;i<GAME_PLAYER;i++) { //设置位置 WORD wViewChairID=SwitchViewChairID(i); //设置扑克 if (m_cbPlayStatus[i]==TRUE) { BYTE cbCardCount=pStatusPlay->cbCardCount[i]; m_GameClientView.m_CardControl[wViewChairID].SetCardData(pStatusPlay->cbHandCardData[i],cbCardCount); } lTableScore += m_lTableScore[2*i+1]; //筹码设置 m_GameClientView.m_PlayerJeton[wViewChairID].SetScore(m_lTableScore[2*i]); //设置下注 m_GameClientView.SetUserTableScore(wViewChairID,m_lTableScore[2*i]+m_lTableScore[2*i+1]); } m_GameClientView.m_PlayerJeton[GAME_PLAYER].SetScore(lTableScore); // m_GameClientView.SetCellScore(m_lCellScore); //玩家设置 if (IsLookonMode()==false) { //控制设置 m_GameClientView.m_CardControl[2].SetPositively(true); if (m_wCurrentUser==GetMeChairID()) UpdateScoreControl(); } //设置定时器 SetGameTimer(m_wCurrentUser,IDI_USER_ADD_SCORE,TIME_USER_ADD_SCORE); return true; } } return false;}
开发者ID:Michael-Z,项目名称:qipai-game,代码行数:90,
示例3: DetourAttachEx//.........这里部分代码省略......... pTrampoline->rAlign[n].obTrampoline )); } DETOUR_TRACE((" ]/n")); }#endif if (cbTarget < cbJump || nAlign > ARRAYSIZE(pTrampoline->rAlign)) { // Too few instructions. error = ERROR_INVALID_BLOCK; if (s_fIgnoreTooSmall) { goto stop; } else { DETOUR_BREAK(); goto fail; } } if (pbTrampoline > pbPool) { __debugbreak(); }#if 0 // [GalenH] if (cbTarget < pbTrampoline - pTrampoline->rbCode) { __debugbreak(); }#endif pTrampoline->cbCode = (BYTE)(pbTrampoline - pTrampoline->rbCode); pTrampoline->cbRestore = (BYTE)cbTarget; CopyMemory(pTrampoline->rbRestore, pbTarget, cbTarget);#if !defined(DETOURS_IA64) if (cbTarget > sizeof(pTrampoline->rbCode) - cbJump) { // Too many instructions. error = ERROR_INVALID_HANDLE; DETOUR_BREAK(); goto fail; }#endif // !DETOURS_IA64 pTrampoline->pbRemain = pbTarget + cbTarget; pTrampoline->pbDetour = (PBYTE)pDetour;#ifdef DETOURS_IA64#error Feature not supported in this release.
开发者ID:chikyukotei,项目名称:MESSAGEBOX-HOOK,代码行数:50,
示例4: CopyMemory//-----------------------------------------------------------------------------// Name: CWaveFile::Read()// Desc: Reads section of data from a wave file into pBuffer and returns // how much read in pdwSizeRead, reading not more than dwSizeToRead.// This uses m_ck to determine where to start reading from. So // subsequent calls will be continue where the last left off unless // Reset() is called.//-----------------------------------------------------------------------------HRESULT CPCMFile::Read( BYTE* pBuffer, DWORD dwSizeToRead, DWORD* pdwSizeRead ){ if( m_bIsReadingFromMemory ) { if( m_pbDataCur == NULL ) return CO_E_NOTINITIALIZED; if( pdwSizeRead != NULL ) *pdwSizeRead = 0; if( (BYTE*)(m_pbDataCur + dwSizeToRead) > (BYTE*)(m_pbData + m_ulDataSize) ) { dwSizeToRead = m_ulDataSize - (DWORD)(m_pbDataCur - m_pbData); } CopyMemory( pBuffer, m_pbDataCur, dwSizeToRead ); if( pdwSizeRead != NULL ) *pdwSizeRead = dwSizeToRead; return S_OK; } else { MMIOINFO mmioinfoIn; // current status of m_hmmio if( m_hmmio == NULL ) return CO_E_NOTINITIALIZED; if( pBuffer == NULL || pdwSizeRead == NULL ) return E_INVALIDARG; if( pdwSizeRead != NULL ) *pdwSizeRead = 0; if( 0 != mmioGetInfo( m_hmmio, &mmioinfoIn, 0 ) ) return DXTRACE_ERR( TEXT("mmioGetInfo"), E_FAIL ); UINT cbDataIn = dwSizeToRead; if( cbDataIn > m_ck.cksize ) cbDataIn = m_ck.cksize; m_ck.cksize -= cbDataIn; for( DWORD cT = 0; cT < cbDataIn; cT++ ) { // Copy the bytes from the io to the buffer. if( mmioinfoIn.pchNext == mmioinfoIn.pchEndRead ) { if( 0 != mmioAdvance( m_hmmio, &mmioinfoIn, MMIO_READ ) ) return DXTRACE_ERR( TEXT("mmioAdvance"), E_FAIL ); //if( mmioinfoIn.pchNext == mmioinfoIn.pchEndRead ) // return DXTRACE_ERR( TEXT("mmioinfoIn.pchNext"), E_FAIL ); } // Actual copy. *((BYTE*)pBuffer+cT) = *((BYTE*)mmioinfoIn.pchNext); mmioinfoIn.pchNext++; } if( 0 != mmioSetInfo( m_hmmio, &mmioinfoIn, 0 ) ) return DXTRACE_ERR( TEXT("mmioSetInfo"), E_FAIL ); if( pdwSizeRead != NULL ) *pdwSizeRead = cbDataIn; return S_OK; }}
开发者ID:JingPG2014,项目名称:576final,代码行数:77,
示例5: WndProc//.........这里部分代码省略......... for(i = 0 ; i < sizeof(ptWaveL)/sizeof(ptWaveL[0]) ; i++) ptWaveL[i].y=250; //center for wave drawn 195 if(wfe.nChannels == 2) for(i=0 ; i<sizeof(ptWaveR)/sizeof(ptWaveR[0]) ; i++) ptWaveR[i].y=250; //center for wave drawn 195 play = FALSE; rcMove.left = rcInfo[0].left; wsprintf(strState, "ready"); KillTimer(hwnd, 1); InvalidateRect(hwnd, &rcWave, FALSE); InvalidateRect(hwnd, &rcInfo[0], FALSE); InvalidateRect(hwnd, &rcInfo[1], FALSE); InvalidateRect(hwnd, &rcInfo[3], FALSE); return 0; case WM_TIMER: rcMove.left-= 1; if(rcMove.left<-sizeFile.cx) rcMove.left = rcInfo[0].right; waveOutGetPosition(hWaveOut, &mmTime, sizeof(MMTIME)); dwOffset = mmTime.u.cb; iTimeCursor = (double)dwOffset/whdr.dwBufferLength*600; //change Cursor coordinate for(i = -612 ; i <= 612 ; i++) //-310 310 { // C++ CopyRect函数代码示例 C++ CopyMem函数代码示例
|