Forum Discussion

yunhao1103's avatar
yunhao1103
Copper Contributor
Apr 24, 2024

Why under arm64, the X64-compiled c# cannot call the x64 dll generated by go?

Under arm64, I am using x64 compiled c# to call go generated x64 dll, the program always abnormal. The same dll, using x64 compiled c++ calls, without any problems

Are there any flaws in c# on arm?why c++ code dont have this problem? Thanks

  • ArtemiyMoroz's avatar
    ArtemiyMoroz
    Copper Contributor

    yunhao1103 There may be a difference in calling conventions and data sizes mismatch. Your C++ application may behave better cause you recompile it on ARM64, but your C# app needs to know all the P/Invoke staff beforehand. I would suggest atleast putting some debug printouts to check if parameters are passed correctly. 

Resources