อ้างจาก: เข่ง ที่ 15, มีนาคม 2020, 02:52:24 PM
ติดปัญหาตรงไหนครับ
เครื่องลงอะไรบ้าง
ลง Visual Studio 2017 และ Visual Studio 2019
แล้วก็ลง Build Tools for Visual Studio 2015
กับ Build Tools for Visual Studio 2019
ไฟล์โปรเจคลง UnmanagedExports ของ RGiesecke
(ลองลง DllExport อีกเวอรชั่นก็ใช้ไม่ได้ ใช้ได้แต่ของ RGiesecke)
ลองเอา code จากหลายๆ ที่มาใช้ ก็ไม่ผ่าน
ไม่ผ่านหมายถึง ทำออกมาแล้ว ไม่มีฟังชั่น DLL ข้างในครับ
https://github.com/shturm/MetaTrader5-CSharp-VCpp-Exampleใน github ตัวนี้ไฟล์ CSharp เป็น C# ทำไม่ผ่าน แต่ VCpp (C++) ใช้ได้ปกติ ไม่มีปัญหาครับ
https://sites.google.com/site/robertgiesecke/https://github.com/3F/DllExporthttps://www.mql5.com/en/articles/249https://www.mql5.com/en/articles/249ลองหมด ยังใช้ไม่ได้ครับ
ลองทำใหม่หมด แบบเปิด project ใหม่ แล้วสร้าง code ใหม่ ติดตั้ง UnmanagedExports ใหม่ ก็ใช้ไม่ได้ครับ
ใน Visual Studio 2019 มี่ที่เก็บ log เก่าๆ ทั้งหมดบ้างใหมครับ ผมไม่ได้จดไว้เลยครับ
ปัญหาที่เคยเจอมาก่อนหน้านี้
packages\UnmanagedExports.1.2.7\tools\RGiesecke.DllExport.targets(58,3): error :
Microsoft.Build.Utilities.ToolLocationHelper could not find ildasm.exe.
ล่าสุด ตอนนี้ compile แล้วไม่มี error ครับ แต่ก็ใช้ไม่ได้
compile ใช้ C++ ในโปรเจคเดียวกันได้ไม่มีปัญหาครับ
เอาโปรแกรม DLL Export Viewer v1.66 เปิดดู
พบกว่า ทุกตัวที่ลองใช้ C++ ทำมีฟั่งชั่น โชวออกมา ทั้งหมด และเอาไปใช้ได้
แต่ทุกตัวที่ใช้ C# ทำกลับไม่มีอะไรเลย เอาไปใส่ MT4 และ MT5 ก็ import เข้าไม่ได้ และ ไม่เจอ ฟั่งชั่นที่ใส่ไว้ เรียกมาไม่ขึ้นครับ
การคอมไพล debug เป็น x64 แล้วก็ไม่ได้ และสลับลองเป็น x86 ก็ยังเอาไปใช้ไม่ได้ครับ DLL ว่างๆ เลย ไม่มีฟั่งชั่นข้างในครับ
ถ้าใช้ C++ ได้น่าจะจบไปแล้ว แต่เป็น C# ดูใน stackoverflow ทำตามก็ยังใช้ไม่ได้ครับ
ปล. ผมไม่ใช่โปรแกรมเมอร์อาชีพนะครับ มือสมัครเล่นครับ