|
|
/*
* resstr.c - Return code to string translation routines. */
/* Headers
**********/
#include "project.h"
#pragma hdrstop
#ifdef DEBUG
#include "debugstr.h"
#include <shlwapi.h>
#endif
/* Macros
*********/
/*
* macro for simplifying result to string translation, assumes result string * pointer pcsz */
#define STRING_CASE(val) case val: pcsz = TEXT(#val); break
/****************************** Public Functions *****************************/
#ifdef DEBUG
/*
** GetINTString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetINTString(int n) { static TCHAR SrgchINT[] = TEXT("-2147483646");
wnsprintf(SrgchINT, ARRAYSIZE(SrgchINT), TEXT("%d"), n);
ASSERT(IS_VALID_STRING_PTR(SrgchINT, CSTR));
return(SrgchINT); }
/*
** GetULONGString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetULONGString(ULONG ul) { static TCHAR SrgchULONG[] = TEXT("4294967295");
wnsprintf(SrgchULONG, ARRAYSIZE(SrgchULONG), TEXT("%lx"), ul);
ASSERT(IS_VALID_STRING_PTR(SrgchULONG, CSTR));
return(SrgchULONG); }
/*
** GetBOOLString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetBOOLString(BOOL bResult) { LPCTSTR pcsz;
if (bResult) pcsz = TEXT("TRUE"); else pcsz = TEXT("FALSE");
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
/*
** GetCOMPARISONRESULTString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetCOMPARISONRESULTString(COMPARISONRESULT cr) { LPCTSTR pcsz;
switch (cr) { STRING_CASE(CR_FIRST_SMALLER); STRING_CASE(CR_FIRST_LARGER); STRING_CASE(CR_EQUAL);
default: ERROR_OUT((TEXT("GetCOMPARISONRESULTString() called on unknown COMPARISONRESULT %d."), cr)); pcsz = TEXT("UNKNOWN COMPARISONRESULT"); break; }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
#ifdef INC_OLE2
/*
** GetHRESULTString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetHRESULTString(HRESULT hr) { LPCTSTR pcsz; static TCHAR SrgchHRESULT[] = TEXT("0x12345678");
switch (hr) { STRING_CASE(S_OK); STRING_CASE(S_FALSE);
STRING_CASE(E_UNEXPECTED); STRING_CASE(E_NOTIMPL); STRING_CASE(E_OUTOFMEMORY); STRING_CASE(E_INVALIDARG); STRING_CASE(E_NOINTERFACE); STRING_CASE(E_POINTER); STRING_CASE(E_HANDLE); STRING_CASE(E_ABORT); STRING_CASE(E_FAIL); STRING_CASE(E_ACCESSDENIED);
STRING_CASE(CLASS_E_NOAGGREGATION);
STRING_CASE(CO_E_NOTINITIALIZED); STRING_CASE(CO_E_ALREADYINITIALIZED); STRING_CASE(CO_E_INIT_ONLY_SINGLE_THREADED);
#ifdef __RECONCIL_H__
STRING_CASE(REC_S_IDIDTHEUPDATES); STRING_CASE(REC_S_NOTCOMPLETE); STRING_CASE(REC_S_NOTCOMPLETEBUTPROPAGATE);
STRING_CASE(REC_E_ABORTED); STRING_CASE(REC_E_NOCALLBACK); STRING_CASE(REC_E_NORESIDUES); STRING_CASE(REC_E_TOODIFFERENT); STRING_CASE(REC_E_INEEDTODOTHEUPDATES);
#endif /* __RECONCIL_H__ */
default: wnsprintf(SrgchHRESULT, ARRAYSIZE(SrgchHRESULT), TEXT("%#lx"), hr); pcsz = SrgchHRESULT; break; }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
#endif /* INC_OLE2 */
#ifdef __SYNCENG_H__
/*
** GetTWINRESULTString() ** ** Returns a pointer to the string name of a TWINRESULT return code. ** ** Arguments: tr - return code to be translated ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetTWINRESULTString(TWINRESULT tr) { LPCTSTR pcsz;
ASSERT(tr >= 0);
if (tr < ARRAY_ELEMENTS(rgcpcszTwinResult)) pcsz = rgcpcszTwinResult[tr]; else { ERROR_OUT((TEXT("GetTWINRESULTString() called on unrecognized TWINRESULT %ld."), tr)); pcsz = TEXT("UNKNOWN TWINRESULT"); }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
/*
** GetCREATERECLISTPROCMSGString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetCREATERECLISTPROCMSGString(UINT uCreateRecListMsg) { LPCTSTR pcsz;
ASSERT(uCreateRecListMsg >= 0);
if (uCreateRecListMsg < ARRAY_ELEMENTS(rgcpcszCreateRecListMsg)) pcsz = rgcpcszCreateRecListMsg[uCreateRecListMsg]; else { ERROR_OUT((TEXT("GetCREATERECLISTPROCMSGString() called on unrecognized RECSTATUSPROC message %u."), uCreateRecListMsg)); pcsz = TEXT("UNKNOWN RECSTATUSPROC MESSAGE"); }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
/*
** GetRECSTATUSPROCMSGString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetRECSTATUSPROCMSGString(UINT uRecStatusMsg) { LPCTSTR pcsz;
ASSERT(uRecStatusMsg >= 0);
if (uRecStatusMsg < ARRAY_ELEMENTS(rgcpcszRecStatusMsg)) pcsz = rgcpcszRecStatusMsg[uRecStatusMsg]; else { ERROR_OUT((TEXT("GetRECSTATUSPROCMSGString() called on unrecognized RECSTATUSPROC message %u."), uRecStatusMsg)); pcsz = TEXT("UNKNOWN RECSTATUSPROC MESSAGE"); }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
/*
** GetRECNODESTATEString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetRECNODESTATEString(RECNODESTATE rnstate) { LPCTSTR pcsz;
switch (rnstate) { STRING_CASE(RNS_NEVER_RECONCILED); STRING_CASE(RNS_UNAVAILABLE); STRING_CASE(RNS_DOES_NOT_EXIST); STRING_CASE(RNS_DELETED); STRING_CASE(RNS_NOT_RECONCILED); STRING_CASE(RNS_UP_TO_DATE); STRING_CASE(RNS_CHANGED);
default: ERROR_OUT((TEXT("GetRECNODESTATEString() called on unknown RECNODESTATE %d."), rnstate)); pcsz = TEXT("UNKNOWN RECNODESTATE"); break; }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
/*
** GetRECNODEACTIONString() ** ** ** ** Arguments: ** ** Returns: ** ** Side Effects: none */ PUBLIC_CODE LPCTSTR GetRECNODEACTIONString(RECNODEACTION rnaction) { LPCTSTR pcsz;
switch (rnaction) { STRING_CASE(RNA_NOTHING); STRING_CASE(RNA_COPY_FROM_ME); STRING_CASE(RNA_COPY_TO_ME); STRING_CASE(RNA_MERGE_ME); STRING_CASE(RNA_DELETE_ME);
default: ERROR_OUT((TEXT("GetRECNODEACTIONString() called on unknown RECNODEACTION %d."), rnaction)); pcsz = TEXT("UNKNOWN RECNODEACTION"); break; }
ASSERT(IS_VALID_STRING_PTR(pcsz, CSTR));
return(pcsz); }
#endif /* __SYNCENG_H__ */
#endif /* DEBUG */
|