错误! Excel12(152)回调失败:命令失败

时间:2019-01-10 06:28:14

标签: c++ visual-studio-2017 excel-sdk

在我运行通用语言时,在日语版Excel的Excel SDK示例中,我得到一个错误:错误! Excel12(152)回调失败:命令失败

有人知道我需要进行哪些更改才能使其正常工作吗?
我尝试在Visual Studio中打开和关闭unicode,但这没有帮助。

在generic.c中调用此代码行时,在代码示例中失败 Excel12f(xlfAddMenu,0,3,TempNum12(10),(LPXLOPER12)&xMenu,TempStr12(L“ Help”)));

我正在使用Excel 2013 64位日语和Windows 10版本1607(OS Build 14393.2724)64位英语。

这是代码失败的部分:

Excel12f(xlfGetBar, &xTest, 3, TempInt12(10), TempStr12(L"Generic"), TempInt12(0));

if (xTest.xltype == xltypeErr)
{
    hMenu = GlobalAlloc(GMEM_MOVEABLE,sizeof(XLOPER12) * g_rgMenuCols * g_rgMenuRows);
    px = pxMenu = (LPXLOPER12) GlobalLock(hMenu);

    for (i=0; i < g_rgMenuRows; i++)
    {
        for (j=0; j < g_rgMenuCols; j++)
        {
            px->xltype = xltypeStr;
            px->val.str = TempStr12(g_rgMenu[i][j])->val.str;
            px++;
        }
    }

    xMenu.xltype = xltypeMulti;
    xMenu.val.array.lparray = pxMenu;
    xMenu.val.array.rows = g_rgMenuRows;
    xMenu.val.array.columns = g_rgMenuCols;

    Excel12f(xlfAddMenu,0,3,TempNum12(10),(LPXLOPER12)&xMenu,TempStr12(L"Help"));

    GlobalUnlock(hMenu);
    GlobalFree(hMenu);
}

它适用于英文版的Excel。

0 个答案:

没有答案