Javascript C+中的无符号短*和wchar#t错误+;
我使用VS2008为Fljs制作一个C++ DLL,它是Adobe Flash使用的JS。 hell函数需要一个arg,其类型为Javascript C+中的无符号短*和wchar#t错误+;,javascript,c++,c,Javascript,C++,C,我使用VS2008为Fljs制作一个C++ DLL,它是Adobe Flash使用的JS。 hell函数需要一个arg,其类型为unsigned short*,用于js中的register函数名 我使用这个示例成功地在js中执行了一些简单的操作。它通过了参数use\u T(“functionname”) 但是,样本是C代码。当我使用C++代码(只是改变.c到.cp),VS告诉我 WCARGYT是内部类型,所以我关闭选项,现在 WCARGYT是无符号短的Type。 然后编译它,没有错误。但是在js
unsigned short*
,用于js中的register函数名
我使用这个示例成功地在js中执行了一些简单的操作。它通过了参数use\u T(“functionname”)
但是,样本是C代码。当我使用C++代码(只是改变.c到.cp),VS告诉我<代码> WCARGYT是内部类型,所以我关闭选项,现在
在C和C++中,
extern "C" { // only need to export C interface if
__declspec( dllimport ) void MyCFunc();
};
也许函数的名称被修改了,所以你可以把它作为C函数找到,但不是C++。我在VS调试中看到了这个值是完整的。但是登记函数是在Flash和Flash中登记的,我不知道它的实现。如果这个名字被导出错误,FLAHS就找不到它。在调试器中,您看不到这一点,因为调试器知道如何将其解纠缠。OYuo必须使用一个工具查看它,该工具可以向您显示导出的符号。如果这有帮助的话,试着看看你是否将函数解释为C。我已经解决了我的问题!FC++只是登记登记功能,不需要注册C++功能,不需要代码> y*DEXSPEC(DLLIMPORT)< /C>来导出函数,但是我使用C++代码>外部“C”< /代码>,以便我可以用C函数调用它,我可以顺利登记。谢谢!