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