我正在使用VS2008为Fljs制作C ++ DLL,这是Adobe Flash使用的。
地狱函数需要一个类型为unsigned short *
的arg,用于js中的寄存器函数名。
我使用该示例成功地在js.中执行了一些简单的操作。它传递了arg使用_T("functionname")
但是样本是C代码。当我使用C ++代码(只需将.c更改为.cpp)时,VS告诉我wchar_t
是内部类型,所以我关闭了选项,现在是{{1是无符号短文的typedef。
然后编译它没有错误。但在js中,它找不到函数名。
所以我想知道为什么js找不到名字?
使用wchar_t
做了什么,它在C和C ++中都是wchar_t
的typedef?
答案 0 :(得分:1)
如果切换到C ++并且未将导出的函数标记为C样式,则很可能现在您的函数名称已损坏。
您可以在MSDN
上看到解释你可以尝试再次使它们成为C.
extern "C" { // only need to export C interface if
__declspec( dllimport ) void MyCFunc();
};