SDTApi.cs 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. using System.Runtime.InteropServices;
  2. namespace Vinno.IdentificationCardApp
  3. {
  4. public class SdtApi
  5. {
  6. /// <summary>
  7. /// 0x90: Open port successful
  8. /// 0x01: Open port failed or port is illegal
  9. /// </summary>
  10. /// <param name="iPortID"></param>
  11. /// <returns></returns>
  12. [DllImport("sdtapi.dll")]
  13. public static extern int SDT_OpenPort(int iPortID);
  14. /// <summary>
  15. ///0x90 Close port successful
  16. ///0x01 Close port failed port or port is illegal
  17. /// </summary>
  18. /// <param name="iPortID"></param>
  19. /// <returns></returns>
  20. [DllImport("sdtapi.dll")]
  21. public static extern int SDT_ClosePort(int iPortID);
  22. [DllImport("sdtapi.dll")]
  23. public static extern int SDT_PowerManagerBegin(int iPortID, int iIfOpen);
  24. [DllImport("sdtapi.dll")]
  25. public static extern int SDT_AddSAMUser(int iPortID, string pcUserName, int iIfOpen);
  26. [DllImport("sdtapi.dll")]
  27. public static extern int SDT_SAMLogin(int iPortID, string pcUserName, string pcPasswd, int iIfOpen);
  28. [DllImport("sdtapi.dll")]
  29. public static extern int SDT_SAMLogout(int iPortID, int iIfOpen);
  30. [DllImport("sdtapi.dll")]
  31. public static extern int SDT_UserManagerOK(int iPortID, int iIfOpen);
  32. [DllImport("sdtapi.dll")]
  33. public static extern int SDT_ChangeOwnPwd(int iPortID, string pcOldPasswd, string pcNewPasswd, int iIfOpen);
  34. [DllImport("sdtapi.dll")]
  35. public static extern int SDT_ChangeOtherPwd(int iPortID, string pcUserName, string pcNewPasswd, int iIfOpen);
  36. [DllImport("sdtapi.dll")]
  37. public static extern int SDT_DeleteSAMUser(int iPortID, string pcUserName, int iIfOpen);
  38. [DllImport("sdtapi.dll")]
  39. public static extern int SDT_StartFindIDCard(int iPortID, ref int pucIin, int iIfOpen);
  40. [DllImport("sdtapi.dll")]
  41. public static extern int SDT_SelectIDCard(int iPortID, ref int pucSn, int iIfOpen);
  42. [DllImport("sdtapi.dll")]
  43. public extern static int SDT_ReadBaseMsg(int iPort, [Out, MarshalAs(UnmanagedType.LPArray)] byte[] pucChMsg,
  44. ref int puiChMsgLen, [Out, MarshalAs(UnmanagedType.LPArray)]byte[] pucPhMsg, ref int puiPhMsgLen, int iIfOpen);
  45. [DllImport("sdtapi.dll")]
  46. public static extern int SDT_ReadBaseMsgToFile(int iPortID, string fileName1, ref int puiChMsgLen, string fileName2, ref int puiPhMsgLen, int iIfOpen);
  47. [DllImport("sdtapi.dll")]
  48. public static extern int SDT_WriteAppMsg(int iPortID, ref byte pucSendData, int uiSendLen, ref byte pucRecvData, ref int puiRecvLen, int iIfOpen);
  49. [DllImport("sdtapi.dll")]
  50. public static extern int SDT_WriteAppMsgOK(int iPortID, ref byte pucData, int uiLen, int iIfOpen);
  51. [DllImport("sdtapi.dll")]
  52. public static extern int SDT_CancelWriteAppMsg(int iPortID, int iIfOpen);
  53. [DllImport("sdtapi.dll")]
  54. public static extern int SDT_ReadNewAppMsg(int iPortID, ref byte pucAppMsg, ref int puiAppMsgLen, int iIfOpen);
  55. [DllImport("sdtapi.dll")]
  56. public static extern int SDT_ReadAllAppMsg(int iPortID, ref byte pucAppMsg, ref int puiAppMsgLen, int iIfOpen);
  57. [DllImport("sdtapi.dll")]
  58. public static extern int SDT_UsableAppMsg(int iPortID, ref byte ucByte, int iIfOpen);
  59. [DllImport("sdtapi.dll")]
  60. public static extern int SDT_GetUnlockMsg(int iPortID, ref byte strMsg, int iIfOpen);
  61. [DllImport("sdtapi.dll")]
  62. public static extern int SDT_GetSAMID(int iPortID, ref byte strSamid, int iIfOpen);
  63. [DllImport("sdtapi.dll")]
  64. public static extern int SDT_SetMaxRFByte(int iPortID, byte ucByte, int iIfOpen);
  65. [DllImport("sdtapi.dll")]
  66. public static extern int SDT_ResetSAM(int iPortID, int iIfOpen);
  67. [DllImport("WltRS.dll")]
  68. public static extern int GetBmp(string fileName, int intf);
  69. }
  70. }