windows-nt/Source/XPSP1/NT/ds/adsi/drt/dssrch/main.hxx

129 lines
1.7 KiB
C++
Raw Permalink Normal View History

2020-09-26 03:20:57 -05:00
#ifndef __MAIN_HXX
#define __MAIN_HXX
//
// System Includes
//
#define UNICODE
#define _UNICODE
#define INC_OLE2
#include <windows.h>
//
// CRunTime Includes
//
#include <stdlib.h>
#include <limits.h>
#include <io.h>
#include <stdio.h>
#include <stddef.h>
//
// Public ADs includes
//
#ifdef __cplusplus
extern "C" {
#endif
#include "activeds.h"
#include "oledb.h"
#include "oledberr.h"
#ifdef __cplusplus
}
#endif
#define NULL_TERMINATED 0
//
// ********* Useful macros
//
#define BAIL_ON_NULL(p) \
if (!(p)) { \
goto error; \
}
#define BAIL_ON_FAILURE(hr) \
if (FAILED(hr)) { \
goto error; \
}
#define FREE_INTERFACE(pInterface) \
if (pInterface) { \
pInterface->Release(); \
pInterface=NULL; \
}
#define ADS_FREE(pMem) \
if (pMem) { \
FreeADsMem(pMem); \
pMem = NULL; \
}
#define FREE_UNICODE_STRING(pMem) \
if (pMem) { \
FreeUnicodeString(pMem); \
pMem = NULL; \
}
void
PrintColumn(
PADS_SEARCH_COLUMN pColumn,
LPWSTR pszColumnName
);
int
AnsiToUnicodeString(
LPSTR pAnsi,
LPWSTR pUnicode,
DWORD StringLength
);
int
UnicodeToAnsiString(
LPWSTR pUnicode,
LPSTR pAnsi,
DWORD StringLength
);
LPWSTR
AllocateUnicodeString(
LPSTR pAnsiString
);
void
FreeUnicodeString(
LPWSTR pUnicodeString
);
void
PrintUsage(
void
);
HRESULT
ProcessArgs(
int argc,
char * argv[]
);
LPWSTR
RemoveWhiteSpaces(
LPWSTR pszText
);
#endif // __MAIN_HXX