[問題] MFC 與 Python 互通

作者: largesperm (reindeer)   2018-11-03 12:36:30
公司買了一個繪圖引擎
是 MFC 寫的 沒有 source code 只有 API
(如果有得選 打死也不選 MFC)
目前要做的是 用 MFC 寫 plugins
主程式會自動載入 plugins
問題來了 我原本是寫應用的 非底層 用 Python 跟 C#
也非 CS 出身 壓根不懂 C/C++/底層/回收/記憶體管理等等
有嘗試著學 MFC 但是進度實在是太慢了
光是處裡檔案路徑的字串字元就搞死我了
更何況本來就要做的東西還是要繼續做 那來的美國時間
最近聽同業以前專門寫 MFC 的前輩說
有工具可以自動產生 API 讓 Python 或 C# 語言來處理
別浪費生命在 MFC 上
現在科技這麼發達 難道沒辦法用 Python 或 C# 來處理嗎
請問有關鍵字可查詢嗎 感謝
EDITED
這篇跟我遇到的狀況好像是一樣的 https://goo.gl/HU2MfU
都是有個主程式 但是要寫的是 plugins
plugins 要 dllexport 特定方法 主程式才會主動載入
作者: feeya (24 August 升格為鄉民)   2018-11-03 13:05:00
VS的C/MFC應該可以包成lib給C#使用
作者: layan (教練我想打球 T_T)   2018-11-03 15:58:00
Google SWIG
作者: jass970991 (半糖綠假面超人)   2018-11-03 22:23:00
我比較好奇 你寫c#但不懂記憶體管理?
作者: largesperm (reindeer)   2018-11-04 00:06:00
可能是因為我寫的都是 plugins 吧 沒有特別注意記憶體這件事情 就直接寫了 效能不好再來查那邊用的時間多 再下去改 寫久了就知道那些寫法不好GC 在背後可能就默默幫我做了許多事情了
作者: uranusjr (←這人是超級笨蛋)   2018-11-04 18:34:00
聽起來你要的是顛倒, 因為主程式是 MFC, 你要掛 Python這樣你要的應該是做出一個 Python.dll 的 MFC wrapper
作者: largesperm (reindeer)   2018-11-05 11:45:00
有道理 感謝解惑
作者: Zephyr750 (紅蓮西風750)   2018-11-08 08:29:00
Google: python call C API by Boost
作者: feeya (24 August 升格為鄉民)   2018-11-08 13:11:00
其實有簡易作法 C#跟python之間用socket溝通就好啦

Links booklink

Contact Us: admin [ a t ] ucptt.com