工作上收到一份dll
他給的文件方法是
SnmpStatus(int& DeviceStatus,int& PrinterStatus,char* PrinterError);
所以我採用
[DllImport("MPrinterSnmp.dll", EntryPoint = "SnmpStatus", CallingConvention
= CallingConvention.StdCall,CharSet =CharSet.Unicode)]
public static extern int SnmpStatus(out int DeviceStatus, out int
PrinterStatus,ref StringBuilder PrinterError);
可是一呼叫 程式就直接結束工作,連例外都沒跳出
曾經有一次 把 StringBuilder改成Char有成功取得值一次
但是後來再試就一樣直接跳掉
StringBuilder 改試過 String、byte[2]、String[2]、IntPtr、char、char[2]
都是直接跳掉
另外 他有附他的.h給我 裡面的方法是
extern "C" __declspec(dllexport) int __stdcall SnmpStatus(int
&DeviceStatus,int &PrinterStatus,char *PrinterError);
*和&的位置和文件的位置有些微不一樣 不知道有沒有差別