DLL 函数名称限制 - 函数名称末尾的数字可以吗?
DLL function name restriction - digit at end of function name OK?
我正在使用 Xlw 框架,它为在 Excel 中编写 C++ 插件提供了方便的包装器。我遇到了一个问题:当我命名一个 Excel 函数用于 Excel 并且末尾有一个数字时,该函数不是 'exposed' (即由 add-在)中 Excel。当我删除最后一位数字,或在函数名称中包含数字但使用非数字完成函数时,它看起来很好。
AddTwo(double x) // available in Excel
Add123Two(double x) // available in Excel
Add2(double x) // not available in Excel
(C++ Excel 加载项只是将 .dll 重命名为 .xll,并在 .dll 内容中包含一些其他细节)。
我没有看到任何相关的 Microsoft 对导出的 .dll 函数的命名限制,但我的问题是:创建一个以数字作为最后一个字符的导出的 .dll 函数是否可以?如果是这样,我猜问题是 Excel 或 Xlw 框架相关。
您不能调用名称为单元格地址 (A1
-XFD1048576
) 的函数(用作 UDF)。同样的规则适用于命名范围。
我正在使用 Xlw 框架,它为在 Excel 中编写 C++ 插件提供了方便的包装器。我遇到了一个问题:当我命名一个 Excel 函数用于 Excel 并且末尾有一个数字时,该函数不是 'exposed' (即由 add-在)中 Excel。当我删除最后一位数字,或在函数名称中包含数字但使用非数字完成函数时,它看起来很好。
AddTwo(double x) // available in Excel
Add123Two(double x) // available in Excel
Add2(double x) // not available in Excel
(C++ Excel 加载项只是将 .dll 重命名为 .xll,并在 .dll 内容中包含一些其他细节)。
我没有看到任何相关的 Microsoft 对导出的 .dll 函数的命名限制,但我的问题是:创建一个以数字作为最后一个字符的导出的 .dll 函数是否可以?如果是这样,我猜问题是 Excel 或 Xlw 框架相关。
您不能调用名称为单元格地址 (A1
-XFD1048576
) 的函数(用作 UDF)。同样的规则适用于命名范围。