PRB: Using HSZ in AFXEXT.H and DDEML.H (98871)



The information in this article applies to:

  • Microsoft Windows Software Development Kit (SDK) 3.0
  • Microsoft Windows Software Development Kit (SDK) 3.1

This article was previously published under Q98871

SYMPTOMS

When using both the AFXEXT.H and DDEML.H include files in the same source file, the following message is received:
error C2371: 'HSZ' : redefinition; different basic types

CAUSE

The problem is a naming conflict between Dynamic Date Exchange Management Library (DDEML) and Visual Basic eXtension (VBX) files controls, in which both use the type HSZ [handle to a string that is zero (NULL) terminated] but with with different meanings.

AFXEXT.h includes the definition of HSZ in order to support the Control Development Kit (CDK), and DDEML.H uses HSZ as a string type.

RESOLUTION

Workarounds for this problem include:

  • Separate the DDEML and VBX code into different files, thus preventing AFXEXT.H and DDEML.H from being included in the same source file. -or-

  • Use #define NO_VBX_SUPPORT in the file that implements DDE. This will cause DDEML's definition of HSZ to be used.

Modification Type:MajorLast Reviewed:10/29/2003
Keywords:kb16bitonly KB98871