Я отлаживаю подключаемый модуль Excel 2010, выполненный кем-то другим, и перехожу с 32-разрядной WindowsXP на 64-разрядную Windows 7.
Я получаю ошибку времени компиляции в файле XLCALL.CPP, являющемся частью "Microsoft Excel Developer's Toolkit - Version 14.0".
Это код с ошибкой:
...
typedef int (PASCAL *EXCEL12PROC) (int xlfn, int coper, LPXLOPER12 *rgpxloper12, LPXLOPER12 xloper12Res);
HMODULE hmodule;
EXCEL12PROC pexcel12;
__forceinline void FetchExcel12EntryPt(void) // <<< error, line 36
{
if (pexcel12 == NULL)
{
hmodule = GetModuleHandle(NULL);
if (hmodule != NULL)
{
pexcel12 = (EXCEL12PROC) GetProcAddress(hmodule, EXCEL12ENTRYPT);
}
}
}
Это сообщение об ошибке:
S:\3rdparty\2010 Office System Developer Resources\Excel2010XLLSDK\SRC\XLCALL.CPP|36|error: expected constructor, destructor, or type conversion before 'void'
Понятия не имею о возможной причине этой ошибки. В файле включения XLCALL.H нет определений классов, только структуры POD, поэтому он не должен искать конструкторы / деструкторы. Функция, к которой относится ошибка, является локальной для этого файла (т.е. не объявлена во включаемом файле). Другие файлы не включены.
Спасибо за любую помощь!
Платформа:
Windows 7 64 бит
Excel 2010
Mingw32
CodeBlocks 10.05