Back
#pragma once
typedef unsigned __int3264 ABIG;
typedef unsigned __int64 BIG64;
class CPSLUtilities
{
public:
//////////////////////////////////////////////////
// Method GetVariantBig;
//
// Attempts extraction of ABIG from a Variant,
// optionally indicating whether there was an error
// during extraction;
static ABIG GetVariantBig(LPVARIANT pVar, bool * pError = NULL);
//////////////////////////////////////////////////
// Method SetVariantBig;
//
// Sets a 64-bit long value into the variant when
// in 64-bit mode, and 32-bit when in 32-bit mode;
static void SetVariantBig(LPVARIANT pVar, ABIG Value);
///////////////////////////////////////////////////
// Method SetVariant64Bit;
//
// Sets 64-bit long value into the variant when the
// current OS is not Windows 2000, or 32-bit when it
// is Windows 2000.
//
// This method handles the automation problem that
// variant types VT_I8 and VT_UI8 are not supported
// on Windows 2000;
static void SetVariant64Bit(LPVARIANT pVar, BIG64 Value);
//////////////////////////////////////////////////
// Method GetLongFilePathDetails;
//
// Takes a full file path, presumably in the short
// form, converts it into the long form and then
// extracts three parameters from it: full path,
// directory and the file name;
static void GetLongFilePathDetails(LPCTSTR sPath, _bstr_t & filePath, _bstr_t & fileDir, _bstr_t & fileName);
};
Top |