開發平台(Platform): (Ex: Win10, Linux, ...)
windows 10 1803
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
Visual Studio 2017 社群版(15.8.3)
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
問題(Question):
小弟我主要是寫delphi的,幾乎沒碰過c++(更之前只有稍微碰過C/VB)
今天BOSS想要把實驗室中某個程式給其他老師用
因為外面根本沒啥人用delphi所以叫我改寫成dll給其他實驗室的人呼叫
dll本身只有一個程式,沒有input參數也沒output參數
只讀預定義的設定檔和寫固定的結果檔
為了方便對方使用,我用delphi、C++、C#都寫了一個程式碼檔載入dll定義好函式
讓對方可以直接呼叫程式不用再自己引入dll
delphi和C#都測試能正常運行,就C++問題解決不了
主要有三個問題:
1.如標題所說的VS使用debug模式下程式抓不到設定檔,不過如果直接進資料夾點程式
是抓的到的
2.dll的程式執行完後測試用的主控台程式似乎就卡住了,一直沒有執行到最後一行
system("pause");
3.因為dll我編譯了x86和x64版,所以在C++中用#ifdef去抓程式要載入哪個dll
但是WIN32不管是在x86還是x64下都是true,目前是編譯環境在x64時用#undef WIN32
讓系統只抓到 _WIN64的條件,不知道是否有更好的解法?
餵入的資料(Input):
無
預期的正確結果(Expected Output):
dll回傳訊息"計算完成"
錯誤結果(Wrong Output):
dll回傳訊息"未檢查到Data.csv"
程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔)