xlld.framework

framework.d Translated from framework.c by Laeeth Isharc

Purpose: Framework library for Microsoft Excel.

This library provides some basic functions that help in writing Excel DLLs. It includes simple functions for managing memory with XLOPER12s, creating temporary XLOPER12s, robustly calling Excel12(), and outputting debugging strings to the debugger for the current application.

The main purpose of this library is to help you to write cleaner C code for calling Excel. For example, using the framework library you can write

Excel12f(xlcDisplay, 0, 2, TempMissing12(), TempBool12(0));

instead of the more verbose

XLOPER12 xMissing, bool_; xMissing.xltype = xltypeMissing; bool_.xltype = xltypeBool; bool_.val.bool_ = 0; Excel12(xlcDisplay, 0, 2, (LPXLOPER12) &xMissing, (LPXLOPER12) &bool_);

More...

Members

Functions

CallerExample
short CallerExample()
Undocumented in source. Be warned that the author may not have intended to support it.
ConvertXLRef12ToXLRef
BOOL ConvertXLRef12ToXLRef(LPXLREF12 pxref12, LPXLREF pxref)

ConvertXLRef12ToXLRef()

ConvertXLRefToXLRef12
BOOL ConvertXLRefToXLRef12(LPXLREF pxref, LPXLREF12 pxref12)

ConvertXLRefToXLRef12()

Excel
int Excel(int xlfn, LPXLOPER pxResult, LPXLOPER[] args)

Excel()

Excel12f
int Excel12f(int xlfn, LPXLOPER12 pxResult, LPXLOPER12[] args)

Excel12f()

FreeXLOper
void FreeXLOper(T pxloper)
Undocumented in source. Be warned that the author may not have intended to support it.
FreeXLOper
void FreeXLOper(T pxloper, A allocator)
Undocumented in source. Be warned that the author may not have intended to support it.
TempActiveCell
LPXLOPER TempActiveCell(WORD rw, BYTE col)

TempActiveCell()

TempActiveCell12
LPXLOPER12 TempActiveCell12(RW rw, COL col)

TempActiveCell12()

TempActiveColumn
LPXLOPER TempActiveColumn(BYTE col)

TempActiveColumn()

TempActiveColumn12
LPXLOPER12 TempActiveColumn12(COL col)

TempActiveColumn12()

TempActiveRef
LPXLOPER TempActiveRef(WORD rwFirst, WORD rwLast, BYTE colFirst, BYTE colLast)

TempActiveRef()

TempActiveRef12
LPXLOPER12 TempActiveRef12(RW rwFirst, RW rwLast, COL colFirst, COL colLast)

TempActiveRef12()

TempActiveRow
LPXLOPER TempActiveRow(WORD rw)

TempActiveRow()

TempActiveRow12
LPXLOPER12 TempActiveRow12(RW rw)

TempActiveRow12()

TempBool
LPXLOPER TempBool(int b)

TempBool()

TempBool12
LPXLOPER12 TempBool12(BOOL b)

TempBool12()

TempErr
LPXLOPER TempErr(WORD err)

TempErr()

TempErr12
LPXLOPER12 TempErr12(int err)

TempErr12()

TempInt
LPXLOPER TempInt(short i)

TempInt()

TempInt12
LPXLOPER12 TempInt12(int i)

TempInt12()

TempMissing
LPXLOPER TempMissing()

TempMissing()

TempMissing12
LPXLOPER12 TempMissing12()

TempMissing12()

TempNum
LPXLOPER TempNum(double d)

TempNum()

TempNum12
LPXLOPER12 TempNum12(double d)

TempNum12()

TempStr
LPXLOPER TempStr(LPSTR lpstr)

TempStr()

TempStr12
LPXLOPER12[] TempStr12(wstring[] strings)

TempStr12()

TempStr12
LPXLOPER12 TempStr12(wstring lpstr)
Undocumented in source. Be warned that the author may not have intended to support it.
TempStr12
LPXLOPER12 TempStr12(const(wchar*) lpstr)
Undocumented in source. Be warned that the author may not have intended to support it.
TempStrConst
LPXLOPER TempStrConst(LPSTR lpstr)

TempStrConst()

XLOper12ToXLOper
BOOL XLOper12ToXLOper(LPXLOPER12 pxloper12, LPXLOPER pxloper)

XLOper12ToXLOper()

XLOperToXLOper12
BOOL XLOperToXLOper12(LPXLOPER pxloper, LPXLOPER12 pxloper12)

XLOperToXLOper12()

debugPrintf
void debugPrintf(LPSTR lpFormat, ...)

debugPrintf()

makePascalString
wchar* makePascalString(wchar* str)
Undocumented in source. Be warned that the author may not have intended to support it.
makePascalString
wchar* makePascalString(wstring str)
Undocumented in source. Be warned that the author may not have intended to support it.
memcpy_s
int memcpy_s(ubyte* dst, size_t sizeInBytes, ubyte* src, size_t count)

memcpy_s - Copy source buffer to destination buffer

wmemcpy_s
int wmemcpy_s(wchar* dst, size_t numElements, wchar* src, size_t count)
Undocumented in source. Be warned that the author may not have intended to support it.

Manifest constants

CP_ACP
enum CP_ACP;
Undocumented in source.
MAXSHORTINT
enum MAXSHORTINT;
Undocumented in source.
MAXWORD
enum MAXWORD;
Undocumented in source.
cchMaxStz
enum cchMaxStz;
Undocumented in source.
colMaxO8
enum colMaxO8;
Undocumented in source.
rwMaxO8
enum rwMaxO8;
Undocumented in source.

Detailed Description

The library is non-reentrant.

Define _DEBUG to use the debugging functions.

Source code is provided so that you may enhance this library or optimize it for your own application.

Platform: Microsoft Windows

Functions: debugPrintf GetTempMemory FreeAllTempMemory Excel Excel12f TempNum TempNum12 TempStr TempStrConst TempStr12 TempBool TempBool12 TempInt TempInt12 TempErr TempErr12 TempActiveRef TempActiveRef12 TempActiveCell TempActiveCell12 TempActiveRow TempActiveRow12 TempActiveColumn TempActiveColumn12 TempMissing TempMissing12 InitFramework QuitFramework

Meta