Trnsdt.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:3k
源码类别:

模拟服务器

开发平台:

C/C++

  1. /************************************************************************/
  2. /* */
  3. /* Header File: Trnsdt.h iDOS LIB + Windows DLL/Win16 & Win32) */
  4. /* */
  5. /* Copyright (c) Microsoft Corporation.  All rights reserved.      */
  6. /* */
  7. /************************************************************************/
  8. #if defined(WIN32)
  9. #pragma pack(4)
  10. #endif
  11. /****************************************************************************
  12. Definitions for MS-DOS
  13. *****************************************************************************/
  14. #if (!defined(WINDOWS) && !defined(WIN32))
  15. #define FALSE 0
  16. #define TRUE 1
  17. #define FAR _far
  18. #define VOID void
  19. typedef unsigned char BYTE;
  20. typedef BYTE FAR* LPBYTE;
  21. typedef unsigned short WORD;
  22. typedef unsigned long DWORD;
  23. #endif
  24. /****************************************************************************
  25. PASSSTRUCT Structure
  26. *****************************************************************************/
  27. typedef struct tagPassParm  {
  28. WORD parm_length; /* Parameter Length(input) */
  29. WORD exit_code; /* Exit Code(output) */
  30. WORD in_length; /* Input Buffer Length(input) */
  31. LPBYTE in_addr; /* Input Buffer Address(input) */
  32. WORD out_length; /* Output Buffer Length(in/out) */
  33. LPBYTE out_addr; /* Output Buffer Address(input) */
  34. WORD trns_id; /* Conversion ID(input) */
  35. WORD in_page; /* Input Code Page(input) */
  36. WORD out_page; /* Output Code Page   */
  37. WORD option; /* Option(at calling) */
  38.     WORD    type;           /* DBCS, EITHER, BOTH       */
  39. } PASSSTRUCT;
  40. /****************************************************************************
  41. Function declarations
  42. *****************************************************************************/
  43. #if defined(__cplusplus)
  44. extern "C" {
  45. #endif
  46. #if (!defined(WINDOWS) && !defined(WIN32))
  47. WORD TrnsDt(PASSSTRUCT * PassParm);
  48. #else
  49. WORD WINAPI TrnsDt(PASSSTRUCT far* PassParm);
  50. #endif
  51. #if defined(__cplusplus)
  52. }
  53. #endif
  54. /****************************************************************************
  55. Return Codes
  56. *****************************************************************************/
  57. #define NO_ERR 0
  58. #define ERR_FILE_NOT_FOUND 2
  59. #define ERR_INVALID_PARAMETER 87
  60. #define ERR_BUFFER_OVERFLOW 111
  61. #define ERR_MEMORY_ALLOCATE 150
  62. /****************************************************************************
  63. Type codes
  64. *****************************************************************************/
  65. #define SNA_DBCS        0x0100
  66. #define SNA_EITHER      0x0200
  67. #define SNA_BOTH        0x0400
  68. /****************************************************************************
  69. Option bitmasks
  70. *****************************************************************************/
  71. #define OP_GET_SOSI     0x0001
  72. #define OP_DB_START     0x0002
  73. #define OP_IBM_TABLE    0x0004
  74. #define OP_BLANK_PAD    0x0008
  75. #define OP_TRUNCATE     0x0010
  76. #define OP_OMITNULL     0x0020
  77. #define OP_SET_SOSI     0x0100
  78. #if defined(WIN32)
  79. #pragma pack()
  80. #endif