/*****************************************************************************\
* *
* dde.h - Dynamic Data Exchange structures and definitions *
* *
* Copyright (c) 1993-1999, Microsoft Corp. All rights reserved *
* *
\*****************************************************************************/
#ifndef _DDEHEADER_INCLUDED_
#define _DDEHEADER_INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif
#ifndef _WINDEF_
#include <windef.h>
#endif
#include <winapifamily.h>
#if _MSC_VER >= 1200
#pragma warning(push)
#pragma warning(disable:4820) // padding added after data member
#endif
#pragma warning(disable:
4820
)
#ifdef __cplusplus
extern
"C"
{
#endif
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#define WM_DDE_FIRST 0x03E0
#define WM_DDE_INITIATE (WM_DDE_FIRST)
#define WM_DDE_TERMINATE (WM_DDE_FIRST+1)
#define WM_DDE_ADVISE (WM_DDE_FIRST+2)
#define WM_DDE_UNADVISE (WM_DDE_FIRST+3)
#define WM_DDE_ACK (WM_DDE_FIRST+4)
#define WM_DDE_DATA (WM_DDE_FIRST+5)
#define WM_DDE_REQUEST (WM_DDE_FIRST+6)
#define WM_DDE_POKE (WM_DDE_FIRST+7)
#define WM_DDE_EXECUTE (WM_DDE_FIRST+8)
#define WM_DDE_LAST (WM_DDE_FIRST+8)
typedef
struct
{
#ifndef _MAC
unsigned
short
:
8
,
:
6
,
:
1
,
:
1
;
#else
unsigned short usFlags;
#endif
}
;
typedef
struct
{
#ifndef _MAC
unsigned
short
:
14
,
:
1
,
:
1
;
#else
unsigned short usFlags;
#endif
short
;
}
;
typedef
struct
{
#ifndef _MAC
unsigned
short
:
12
,
:
1
,
:
1
,
:
1
,
:
1
;
#else
unsigned short usFlags;
#endif
short
;
[
1
];
}
;
typedef
struct
{
#ifndef _MAC
unsigned
short
:
13
,
:
1
,
:
2
;
#else
unsigned short usFlags;
#endif
short
;
[
1
];
}
;
typedef
struct
{
#ifndef _MAC
unsigned
short
:
13
,
:
1
,
:
1
,
:
1
;
#else
unsigned short usFlags;
#endif
short
;
}
;
typedef
struct
{
#ifndef _MAC
unsigned
short
:
12
,
:
1
,
:
1
,
:
1
,
:
1
;
#else
unsigned short usFlags;
#endif
short
;
[
1
];
}
;
(
,
CONST SECURITY_QUALITY_OF_SERVICE *pqosNew,
const
SECURITY_QUALITY_OF_SERVICE
*
,
PSECURITY_QUALITY_OF_SERVICE
);
ImpersonateDdeClientWindow
(
,
);
LPARAM APIENTRY PackDDElParam(_In_ UINT msg, _In_ UINT_PTR uiLo, _In_ UINT_PTR uiHi);
BOOL APIENTRY UnpackDDElParam(_In_ UINT msg, _In_ LPARAM lParam, _Out_ PUINT_PTR puiLo, _Out_ PUINT_PTR puiHi);
BOOL APIENTRY FreeDDElParam(_In_ UINT msg, _In_ LPARAM lParam);
LPARAM APIENTRY ReuseDDElParam(LPARAM lParam, UINT msgIn, UINT msgOut, UINT_PTR uiLo, UINT_PTR uiHi);
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#ifdef __cplusplus
}
#endif
#if _MSC_VER >= 1200
#pragma warning(pop)
#endif
#endif // _DDEHEADER_INCLUDED_