如題,就是一個基于MFC的專案,而其作為給用戶顯示和操作的界面,能否通過JS去處理,
就是說這個MFC專案跟JS結合起來,融合在一個專案中,
就是本該通過MFC的控制元件,CDC,CClientDC 去實作 的界面變成為JS實作,
這樣有可能嗎?
如果可以要怎么實作 ?

自己也覺得這樣很扯,但還是想問問。
uj5u.com熱心網友回復:
【嚴肅回答】能!不要做A語言代碼修改為B語言代碼的無用功。
也不要做用A語言代碼直接呼叫B語言代碼庫這樣復雜、這樣容易出錯的傻事。
只需讓A、B語言代碼的輸入輸出重定向到文本檔案,或修改A、B語言代碼讓其通過文本檔案輸入輸出。
即可很方便地讓A、B兩種語言之間協調作業。
比如:
A將請求資料寫到檔案a.txt,寫完后改名為aa.txt
B發現aa.txt存在時,讀取其內容,呼叫相應功能,將結果寫到檔案b.txt,寫完后洗掉aa.txt,改名為bb.txt
A發現bb.txt存在時,讀取其內容,讀完后洗掉bb.txt
以上A可以替換為任何一種開發語言或開發環境,B可以替換為任何一種與A不同的開發語言或開發環境。
除非A或B不支持判斷檔案是否存在、檔案讀寫和檔案更名。
但是誰又能舉出不支持判斷檔案是否存在、檔案讀寫和檔案更名的開發語言或開發環境呢?
可以將臨時檔案放在RamDisk上提高效率減少磨損磁盤。
資料的結構很復雜的話,文本檔案的格式問題可參考json或xml
共享臨時文本檔案這種行程之間的通訊方法相比其它方法的優點有很多,下面僅列出我現在能想到的:
·行程之間松耦合
·行程可在同一臺機器上,也可跨機,跨作業系統,跨硬體平臺,甚至跨國。
·方便除錯和監視,只需讓第三方或人工查看該臨時文本檔案即可。
·方便在線開關服務,只需洗掉或創建該臨時文本檔案即可。
·方便實作分布式和負載均衡。
·方便佇列化提供服務,而且幾乎不可能發生佇列滿的情況(除非硬碟空間滿)
·……
“跨語言、跨機,跨作業系統,跨硬體平臺,跨國,跨*.*的”苦海無邊,
回頭是“使用共享純文本檔案進行資訊交流”的岸!
uj5u.com熱心網友回復:
搜“VC與JavaScript互動”uj5u.com熱心網友回復:
lz 你這想法很好,很潮。不少人已經這么去干了。uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
肯定是可以的。如果單是用文本來作為兩者的傳輸的介質,如果資料量過大,而且有變化,檔案就不太好管理和擴展了。看如何應用和需求吧。uj5u.com熱心網友回復:
可以的呀,掛個V8引擎下來,直接執行jsuj5u.com熱心網友回復:
當然可以,10多年前MFC增加了一個CDHtmlDialog類,就是用來做WebUI的。當然也可以在視窗上放一個Webbrowser或libcef來實作
uj5u.com熱心網友回復:
這想法一點也不扯,已經有很多這樣的實體了,很多桌面app都是這樣的模式了,目前就在搞這樣的東西,CEF3 + MFCuj5u.com熱心網友回復:
就是界面顯示的就是JS寫出來的界面嗎?
有沒有比較簡單的例子可供參考一下。
uj5u.com熱心網友回復:
確實是,CEF3已支持V8引擎了,運行效率應該不是什么大問題,星哥,我加你個QQ吧,一起交流啊
uj5u.com熱心網友回復:
肯定是可以的, 界面用webbrowser之類的實作, 后臺一些邏輯用C++實作.然后c++與js互動
uj5u.com熱心網友回復:
c++與js互動 這個想法,已經有很多人實作了。轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/96805.html
標籤:界面
