11 #ifndef VARIANT_UTILS_H
12 #define VARIANT_UTILS_H
18 explicit COMexception(
const std::string& what_arg) : std::runtime_error(what_arg) { }
21 static std::string
com_message(
const std::string& message, HRESULT hr);
33 static std::string
win32_message(
unsigned int code, EXCEPTION_POINTERS * pExp);
create an C++ exception from a COM HRESULT.
int arrayVariantDimensions(VARIANT *v, int dims_array[], int &ndims)
An STL exception describing a Win32 Structured Exception.
int unaccessArrayVariant(VARIANT *v)
COMexception(const std::string &what_arg)
Win32StructuredException(unsigned int code, EXCEPTION_POINTERS *pExp)
int allocateArrayVariant(VARIANT *v, VARTYPE v_type, int *dims_array, int ndims)
COMexception(const std::string &message, HRESULT hr)
Win32StructuredException(const std::string &message)
static int accessArrayVariant(VARIANT *v, void **values, VARTYPE vt)
int makeVariantFromArray(VARIANT *v, const std::vector< T > &the_array)
static std::string win32_message(unsigned int code, EXCEPTION_POINTERS *pExp)
int arrayVariantLength(VARIANT *v)
static std::string com_message(const std::string &message, HRESULT hr)