經神人啟發,原來是
無法開發乾淨的DLL所以才會改開發EXE作為替代
正常來說不管用什麼程式語言於任何開發環境
都像是用WIndows API一樣,把DLL提供的function宣告進來就能用了,
但是現在新的開發環境引導DLL專案都會多包了一層,
所以開發出來的DLL幾乎只能用相同的開發環境進行開發時才能用
好像是managed和unmanaged之類的說法吧
在這樣的條件下,用DLL的開發環境去開發成EXE變成是最簡單的解法
而用EXE的方式可以說:
只要能呼叫EXE執行的程式語言就能用的API (聽起來多漂亮)
但是如果DLL能用,
像是Python明明抓系統提供的DLL當物件呼叫function就很簡單阿,
也就是那些EXE的功能如果也是在DLL裏開個function端口供傳入EXE要下的參數
那不是一模一樣嗎?
而且將每個EXE的功能都是DLL中的一個function的話
每個執行結果的保存和互相引用不是更簡單?
所以結論就是開發團隊沒辦法作出都能適用的unmanaged DLL
因此改作EXE真是個Smart的想法,
那麼就稱之為 Smart API
|