VS2013中C 方式的程序間通訊 共享記憶體

2021-08-29 07:42:43 字數 1665 閱讀 8288

程序a:

#include handle hmapfile = invalid_handle_value;

lpvoid lpbase = null;

#define buf_size 8 //設定共享記憶體長度

int main(int argc, char *argv)

; //埠號

char szbuffer[buf_size] = ;

memcpy(szbuffer, port, strlen(port));

// 建立共享檔案控制代碼

invalid_handle_value, // 物理檔案控制代碼

null, // 預設安全級別

page_readwrite, // 可讀可寫

0, // 高位檔案大小

buf_size, // 低位檔案大小

l"sharememory" // 共享記憶體名稱,可為null

);// 對映快取區檢視 , 得到指向共享記憶體的指標

lpbase = mapviewoffile(

hmapfile, // 共享記憶體的控制代碼

file_map_all_access, // 可讀寫許可

0, // 高位偏移量

0, // 低位偏移量

buf_size // 要對映的位元組數

);// 將資料拷貝到共享記憶體

strcpy((char*)lpbase, szbuffer);

// 解除檔案對映

unmapviewoffile(lpbase);

lpbase = null;

// 關閉記憶體對映檔案物件控制代碼

closehandle(hmapfile);

hmapfile = invalid_handle_value;

return 0;

}

程序b:

#include handle hmapfile = invalid_handle_value;

lpvoid lpbase = null;

#define buf_size 8 //設定共享記憶體長度

int main(int argc, char *argv)

lpvoid lpbase = mapviewoffile(hmapfile, file_map_all_access, 0, 0, 0);

// 將共享記憶體資料拷貝出來

char szbuffer[buf_size] = ;

strcpy(szbuffer, (char*)lpbase);

// 解除檔案對映

unmapviewoffile(lpbase);

lpbase = null;

// 關閉記憶體對映檔案物件控制代碼

closehandle(hmapfile);

hmapfile = invalid_handle_value;

return 0;

}

VS2013通過MySQL方式連線到MySQL

vs2013通過mysql方式連線到mysql mysql官網上c 的api有兩個。乙個是很成熟的mysql 據說用了很多年了經歷了若干變化,深受好評 另乙個mysql connector c 近兩年才出的,模仿jdbc做的,封裝得很方便使用。本文主要介紹mysql方式。1.新建mysqltest工...

VS2013中F 的新特性

為了更好的迎接新版本的到來,先看一下之前f 的特性。1.為區分聯合 discriminated unions 新增了命名域,使 更加清晰。2.用新資料的新特性,使向量和矩陣編碼更容易的工作 3.更強大的泛型演算法的擴充套件 4.得到更好的除錯支援,當你使用f 除錯時,除錯編譯器和直譯器選項。5.當你...

OPencv在VS2013中的配置

3 提取完成後,即完成了opencv的安裝 二 設定opencv環境變數 1 開啟計算機的屬性頁,高階系統設定 環境變數 計算機名 的使用者變數 新建 1 變數名 opencv 變數值 opencv的資料夾路徑 opencv build 2 變數名 path 一般已經存在 變數值 opencv的資料...