看板 C_Sharp 關於我們 聯絡資訊
※ 引述《zxcv123123 (討厭在家裡)》之銘言: : [DllImport("RFIDAPI32PC.dll")] : unsafe public static extern uint A : (IntPtr hReader, uint dwCapId, uint* pdwNumItems, : uint dwValueBufSize, Intptr pvValueBuf); 如果 pvValueBuf 只是作 pointer to string 用, 應可宣告成 String 就好~ .NET 會自己處理轉型的問題~ [DllImport("RFIDAPI32PC.dll")] unsafe public static extern uint A ( IntPtr hReader, uint dwCapId, uint* pdwNumItems, uint dwValueBufSize, String pvValueBuf); 呼叫時用 A( ....., "192.168.0.11" ); 就可以了~ 不然用 IntPtr p = Marshal.StringToHGlobalAnsi("192.168.0.11"); A( ..., p); // 呼叫 A Marshal.FreeHGlobal( p ); // 由 caller 釋放 -- 試試這兩個方法吧~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.151.218
zxcv123123:感謝你~~我昨天試了第一個方法...現在成功了 01/18 12:08