C# 調(diào)用 CH375DLL.DLL 函數(shù) :報錯 堆棧不對稱!
  1. 問題:C# 調(diào)用?CH375OpenDevice 函數(shù)報錯?堆棧不對稱!

    相關(guān)代碼:


    ?if (CH375OpenDevice(i) != INVALID_HANDLE_VALUE)

    ? {//初始化時檢測是否有已插入的CH372/CH375設(shè)備? ? ? ? ? ? ? ? ? ?

    ?return HID_RETURN.DEVICE_OPENED;

    ?CH375CloseDevice(i);

    }

? ? ? ?[DefaultDllImportSearchPaths(DllImportSearchPath.AssemblyDirectory)]

? ? ? ? [DllImport("CH375DLL.DLL", EntryPoint = "CH375CloseDevice", CallingConvention = CallingConvention.Cdecl)]

? ? ? ? public static extern void CH375CloseDevice(ulong iIndex);

? ? ? ? [DefaultDllImportSearchPaths(DllImportSearchPath.AssemblyDirectory)]

? ? ? ? [DllImport("CH375DLL.DLL", EntryPoint = "CH375OpenDevice", CallingConvention = CallingConvention.Cdecl)]

? ? ? ? public static extern IntPtr CH375OpenDevice(ulong iIndex);

2.有沒有c#調(diào)用CH375DLL.DLL的相關(guān)Demo?我們現(xiàn)在使用CH32V307單片機。

謝謝!

我們所有API函數(shù)都是 STDCALL 不是CDECL


謝謝,修改后,依然報錯。

1662692286202568.png

1662692286154158.png

1662692286212470.png



1測試例程文件:CH372DBG\DEBUG372 里調(diào)用?CH375OpenDevice 傳遞的參數(shù)是LONG.

2發(fā)布DLL文件:CH372DRV\LIB\C \CH375DLL.H 定義CH375OpenDevice 傳遞的參數(shù)是ULONG.

什么原因,參數(shù)類型是LONG or ULONG?


icon_rar.gifCSHARP.rar

用這個試試。


您給的這個版本太老了,我用的是VS2017.

1.CH372DRV\LIB\C \內(nèi)的LIB和頭文件 在VS2017MFC程序中可以使用,沒有報錯!,C#引用DLL時,報錯不可以。

2.有C#的相關(guān)Demo嗎?我上位機要操作EXCEL,用MFC寫有些費勁!



CSHARP.rar?里面的例程可用,謝謝您!


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频