⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 memshare.cpp

📁 两台PC电脑间数据的通讯,这是主发送端的VC源码
💻 CPP
字号:
// MemShare.cpp: implementation of the CMemShare class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "MemShare.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CMemShare::CMemShare()
{

}

CMemShare::~CMemShare()
{

}

LPSTR CMemShare::MemShareWrite(CString strMemName,long lMemSize)
{
    LPSTR lpMsg;
    hMap = CreateFileMapping((HANDLE)0xFFFFFFFF, NULL,
                           PAGE_READWRITE, 0, lMemSize, strMemName);
    if (hMap == NULL)
    {
        lpMsg=NULL;
		return lpMsg;
    }
    lpMsg = (LPSTR)MapViewOfFile(hMap, FILE_MAP_WRITE, 0, 0, 0);
    if (lpMsg == NULL)
    {
       return lpMsg;
	}
    return lpMsg;
}

LPSTR CMemShare::MemShareRead(CString strMemName, long lMemSize)
{   LPSTR lpMsg;
    hMap = CreateFileMapping((HANDLE)0xFFFFFFFF, NULL,
                            PAGE_READONLY, 0, lMemSize, strMemName);//PAGE_READONLY
    if (hMap == NULL)
    {
        lpMsg=NULL;
		return lpMsg;
    }
    lpMsg = (LPSTR)MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0);
    if (lpMsg == NULL)
    {
       return lpMsg;
	}
    return lpMsg;

}

BOOL CMemShare::MemCloseShare(LPSTR lpMsg,HANDLE hCloseMap)
{  
	BOOL bClose;
    bClose=UnmapViewOfFile(lpMsg);
    if (hCloseMap != NULL) 
	{ 
		CloseHandle(hCloseMap); 
		hMap = INVALID_HANDLE_VALUE; 
	} 
	return bClose;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -