|
|
1.1 ! root 1: #ifndef _DDEHEADER_INCLUDED_ ! 2: #define _DDEHEADER_INCLUDED_ ! 3: ! 4: #ifndef _WINDEF_ ! 5: #include <windef.h> ! 6: #endif ! 7: ! 8: /* DDE window messages */ ! 9: ! 10: #define WM_DDE_FIRST 0x03E0 ! 11: #define WM_DDE_INITIATE (WM_DDE_FIRST) ! 12: #define WM_DDE_TERMINATE (WM_DDE_FIRST+1) ! 13: #define WM_DDE_ADVISE (WM_DDE_FIRST+2) ! 14: #define WM_DDE_UNADVISE (WM_DDE_FIRST+3) ! 15: #define WM_DDE_ACK (WM_DDE_FIRST+4) ! 16: #define WM_DDE_DATA (WM_DDE_FIRST+5) ! 17: #define WM_DDE_REQUEST (WM_DDE_FIRST+6) ! 18: #define WM_DDE_POKE (WM_DDE_FIRST+7) ! 19: #define WM_DDE_EXECUTE (WM_DDE_FIRST+8) ! 20: #define WM_DDE_LAST (WM_DDE_FIRST+8) ! 21: ! 22: /*---------------------------------------------------------------------------- ! 23: | DDEACK structure ! 24: | ! 25: | Structure of wStatus (LOWORD(lParam)) in WM_DDE_ACK message ! 26: | sent in response to a WM_DDE_DATA, WM_DDE_REQUEST, WM_DDE_POKE, ! 27: | WM_DDE_ADVISE, or WM_DDE_UNADVISE message. ! 28: | ! 29: ----------------------------------------------------------------------------*/ ! 30: ! 31: typedef struct { ! 32: unsigned short bAppReturnCode:8, ! 33: reserved:6, ! 34: fBusy:1, ! 35: fAck:1; ! 36: } DDEACK; ! 37: ! 38: ! 39: /*---------------------------------------------------------------------------- ! 40: | DDEADVISE structure ! 41: | ! 42: | WM_DDE_ADVISE parameter structure for hOptions (LOWORD(lParam)) ! 43: | ! 44: ----------------------------------------------------------------------------*/ ! 45: ! 46: typedef struct { ! 47: unsigned short reserved:14, ! 48: fDeferUpd:1, ! 49: fAckReq:1; ! 50: short cfFormat; ! 51: } DDEADVISE; ! 52: ! 53: ! 54: /*---------------------------------------------------------------------------- ! 55: | DDEDATA structure ! 56: | ! 57: | WM_DDE_DATA parameter structure for hData (LOWORD(lParam)). ! 58: | The actual size of this structure depends on the size of ! 59: | the Value array. ! 60: | ! 61: ----------------------------------------------------------------------------*/ ! 62: ! 63: typedef struct { ! 64: unsigned short unused:12, ! 65: fResponse:1, ! 66: fRelease:1, ! 67: reserved:1, ! 68: fAckReq:1; ! 69: short cfFormat; ! 70: BYTE Value[1]; ! 71: } DDEDATA; ! 72: ! 73: ! 74: /*---------------------------------------------------------------------------- ! 75: | DDEPOKE structure ! 76: | ! 77: | WM_DDE_POKE parameter structure for hData (LOWORD(lParam)). ! 78: | The actual size of this structure depends on the size of ! 79: | the Value array. ! 80: | ! 81: ----------------------------------------------------------------------------*/ ! 82: ! 83: typedef struct { ! 84: unsigned short unused:13, /* Earlier versions of DDE.H incorrectly */ ! 85: /* 12 unused bits. */ ! 86: fRelease:1, ! 87: fReserved:2; ! 88: short cfFormat; ! 89: BYTE Value[1]; /* This member was named rgb[1] in previous */ ! 90: /* versions of DDE.H */ ! 91: ! 92: } DDEPOKE; ! 93: ! 94: /*---------------------------------------------------------------------------- ! 95: The following typedef's were used in previous versions of the Windows SDK. ! 96: They are still valid. The above typedef's define exactly the same structures ! 97: as those below. The above typedef names are recommended, however, as they ! 98: are more meaningful. ! 99: ! 100: Note that the DDEPOKE structure typedef'ed in earlier versions of DDE.H did ! 101: not correctly define the bit positions. ! 102: ----------------------------------------------------------------------------*/ ! 103: ! 104: typedef struct { ! 105: unsigned short unused:13, ! 106: fRelease:1, ! 107: fDeferUpd:1, ! 108: fAckReq:1; ! 109: short cfFormat; ! 110: } DDELN; ! 111: ! 112: typedef struct { ! 113: unsigned short unused:12, ! 114: fAck:1, ! 115: fRelease:1, ! 116: fReserved:1, ! 117: fAckReq:1; ! 118: short cfFormat; ! 119: BYTE rgb[1]; ! 120: } DDEUP; ! 121: ! 122: /* ! 123: * dde-specific access flags ! 124: */ ! 125: #define DDE_ADVISE 0x0001L ! 126: #define DDE_EXECUTE 0x0002L ! 127: #define DDE_POKE 0x0004L ! 128: #define DDE_REQUEST 0x0008L ! 129: ! 130: ! 131: // ! 132: // DDE message packing APIs ! 133: // ! 134: LONG APIENTRY PackDDElParam(UINT msg, UINT uiLo, UINT uiHi); ! 135: BOOL APIENTRY UnpackDDElParam(UINT msg, LONG lParam, PUINT puiLo, PUINT puiHi); ! 136: BOOL APIENTRY FreeDDElParam(UINT msg, LONG lParam); ! 137: LONG APIENTRY ReuseDDElParam(LONG lParam, UINT msgIn, UINT msgOut, UINT uiLo, UINT uiHi); ! 138: ! 139: #endif // _DDEHEADER_INCLUDED_
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.