[問題] VC++ WindowsForm + boost interprocess

看板C_and_CPP作者 (twowater)時間5年前 (2018/11/19 01:41), 編輯推噓1(107)
留言8則, 4人參與, 5年前最新討論串1/1
開發平台(Platform): (Ex: Win10, Linux, ...) Win10 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) VC++2015 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) boost 1.61, 1.68 情況相同 問題(Question): 開一個 CLR Empty Project 空白視窗程式,什麼東西都沒放。 光是在 MyForm.h 最上面,#pragma once 下方 #include <boost/interprocess/managed_shared_memory.hpp> 執行時就會出現: Exception thrown at 0x00007FF8C8400220 (ntdll.dll) in WinForm_Test.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF. 只要拿掉該行就可以正常跑出空白視窗 餵入的資料(Input): 啥都沒有 預期的正確結果(Expected Output): 至少跳出一個空白視窗吧 錯誤結果(Wrong Output): 同問題描述 程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔) 同問題描述 補充說明(Supplement): 用 console 測試沒有問題,用 windows form 連 #include 都有問題... 本人 coding 功力就完全是個外行,google 了好一陣子,還沒什麼頭緒, 說不定這其實是很簡單的問題,希望經驗豐富的板大指點一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.129.153.167 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1542562873.A.E71.html

11/19 08:02, 5年前 , 1F
我個人比較建議你 UI 用 C#,C++ DLL可以在C#呼叫
11/19 08:02, 1F

11/19 10:54, 5年前 , 2F
嗯...情況可能不允許我整個改用 C# 重寫。或者是在 VC++
11/19 10:54, 2F

11/19 10:56, 5年前 , 3F
有什麼其他簡單的方法可以做到interprocess communicat-
11/19 10:56, 3F

11/19 10:56, 5年前 , 4F
on 呢? 我只需要在一個x64視窗程式與一個x86 console 之
11/19 10:56, 4F

11/19 10:57, 5年前 , 5F
間做非常簡單的溝通,來往的變數頂多就是 double 或 int
11/19 10:57, 5F

11/19 10:57, 5年前 , 6F
而已。
11/19 10:57, 6F

11/19 19:09, 5年前 , 7F
建個C++ DLL(引用boost),給C++/CLI call如何
11/19 19:09, 7F

11/29 23:14, 5年前 , 8F
windows上有namedpipe能用
11/29 23:14, 8F
文章代碼(AID): #1RyQGvvn (C_and_CPP)