home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1996 November / VPR9611B.ISO / vabasic / ntclnt.exe / DISK8 / data.8 / datab / INCLUDE / VUSEOLE.H < prev    next >
C/C++ Source or Header  |  1996-07-29  |  3KB  |  97 lines

  1. /*------------------------------------------------------------------------
  2.  * $Source: /rcs/crcs/general/vuseole.h,v $
  3.  * Checked in by: $Author: andres $
  4.  * $Date: 1996/06/11 17:13:26 $              $Revision: 1.8 $
  5.  *
  6.  * Copyright 1987, Techtrol Ltd.
  7.  * Copyright 1990, Visual Edge Software Ltd.
  8.  * -----------------------------------------
  9.  * ALL RIGHTS RESERVED.     This notice is intended as a precaution against
  10.  * inadvertent publication, and shall not be deemed to constitute an
  11.  * acknowledgment that publication has    occurred nor to imply any waiver
  12.  * of confidentiality.    The year included in the notice is the year
  13.  * of the creation of the work.
  14.  *------------------------------------------------------------------------*/
  15. /*------------------------------------------------------------------------
  16.  *
  17.  *       Module Name: vuseole.h
  18.  *  Module Description: #includes and #defines for ole
  19.  *
  20.  *          Date: May 1994
  21.  *
  22.  *------------------------------------------------------------------------*/
  23.  
  24. #ifndef USEOLE_H
  25. #define USEOLE_H
  26.  
  27. #include <vnls.h>
  28. #include <strutil.h>
  29.  
  30. #if !defined(VTOleChar)
  31.  
  32. #    if defined(VSYS_WIN32)
  33. #        define VTOleChar wchar_t
  34. #        define VOLE_WIDE_CHAR
  35.  
  36. #        define VTCOleStr LPCOLESTR
  37.  
  38. #        if !defined(INC_OLE2)
  39. #            define INC_OLE2
  40. #        endif
  41.  
  42. #        define VnOleToChar(str) VeWideToChar(str)
  43. #        define VnCharToOle(str) VeCharToWide(str)
  44. #        define VnOleToWide(str) (str)
  45. #        define VnWideToOle(str) (str)
  46. #        define VnOleLength(str) wcslen(str)
  47. #        define VnOleEqual(a, b) !wcscmp(a, b)
  48. #        define VnOleStrCopy(str) VwcCopy(str)
  49.  
  50. #        define VnCreateBstrFromChar(str) \
  51.                     VeSysAllocString(VeCharToWide(str))
  52. #        define VnCreateCharFromBstr(str) VeCreateCharFromWide(str)
  53. #        define VnCreateBstrFromWide(str) VeSysAllocString(str)
  54. #        define VnCreateWideFromBstr(str) VwcCopy(str)
  55.  
  56. #    else /* !VSYS_WIN32 */
  57.  
  58. #        define VTOleChar char
  59.  
  60. #        define VTCOleStr LPCSTR
  61.  
  62. #        define VnOleToChar(str) (str)
  63. #        define VnCharToOle(str) (str)
  64. #        define VnOleToWide(str) VeCharToWide(str)
  65. #        define VnWideToOle(str) VeWideToChar(str)
  66. #        define VnOleLength(str) strlen(str)
  67. #        define VnOleEqual(a, b) !strcmp(a, b)
  68. #        define VnOleStrCopy(str) VeStrCopy(str)
  69.  
  70. #        define VnCreateBstrFromChar(str) VeSysAllocString(str)
  71. #        define VnCreateCharFromBstr(str) VeStrCopy(str)
  72. #        define VnCreateBstrFromWide(str) \
  73.                     VeSysAllocString(VeWideToChar(str))
  74. #        define VnCreateWideFromBstr(str) VeCreateWideFromChar(str)
  75.  
  76. #    endif /* VSYS_WIN32 */
  77.  
  78. #endif /* VTOleChar */
  79.  
  80. #ifdef USE_OLE2
  81.  
  82. #if defined(VSYS_WINDOWS)
  83. #include <windows.h>
  84. #endif
  85.  
  86. #if defined(VSYS_WIN16)
  87.  
  88. #    include <ole2.h>
  89. #    include <olenls.h>
  90. #    include <dispatch.h>
  91.  
  92. #endif /* VSYS_WIN32 */
  93.  
  94. #endif /* USE_OLE2 */
  95.  
  96. #endif /* USEOLE_H */
  97.