zoukankan      html  css  js  c++  java
  • 进程线程共享内存通信

    // CcommeteDlg 消息处理程序

    BOOL CcommeteDlg::OnInitDialog()
    {
    CDialogEx::OnInitDialog();
    ////////////////////////////////////
    // 将“关于...”菜单项添加到系统菜单中。
    SharedMemory=CreateFileMapping((HANDLE)0xffffffff,NULL,PAGE_READWRITE,0,10000,_T("MemFile"));
    address=MapViewOfFile(SharedMemory,FILE_MAP_WRITE,0,0,0);
    ////////////////////////////////////////
    // IDM_ABOUTBOX 必须在系统命令范围内。
    ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
    ASSERT(IDM_ABOUTBOX < 0xF000);

    CMenu* pSysMenu = GetSystemMenu(FALSE);
    if (pSysMenu != NULL)
    {
    BOOL bNameValid;
    CString strAboutMenu;
    bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
    ASSERT(bNameValid);
    if (!strAboutMenu.IsEmpty())
    {
    pSysMenu->AppendMenu(MF_SEPARATOR);
    pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
    }
    }

    // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
    // 执行此操作
    SetIcon(m_hIcon, TRUE); // 设置大图标
    SetIcon(m_hIcon, FALSE); // 设置小图标

    // TODO: 在此添加额外的初始化代码

    return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
    }



    void CcommeteDlg::OnBnClickedSend()
    {
    // TODO: 在此添加控件通知处理程序代码;
    CString str;
    GetDlgItem(IDC_EDIT1)->GetWindowText(str);
    strcpy((char*)address,(char*)(LPCTSTR)str);


    }


    void CcommeteDlg::OnBnClickedReceive()
    {
    // TODO: 在此添加控件通知处理程序代码;
    CString str;
    strcpy((char*)(LPCTSTR)str,(char*)(address));
    GetDlgItem(IDC_EDIT2)->SetWindowText(str);
    }


    void CcommeteDlg::OnBnClickedQuit()
    {
    // TODO: 在此添加控件通知处理程序代码;
    exit(0);
    }
  • 相关阅读:
    sae-xhprof调试性能
    VC++常用函数
    C++资料收集&整理
    C++宽窄字符串转换
    #MySQL for Python(MySQLdb) Note
    VC++ ADO相关
    MFC各种控件的常见操作(逐步添加中......)
    关于Sql注入的那些事
    Python中socket经ssl加密后server开多线程
    网络编程
  • 原文地址:https://www.cnblogs.com/tiandsp/p/2215808.html
Copyright © 2011-2022 走看看