我用一个带有unicode字符串的函数(LPCWSTR类型)完成了一个C ++ dll:
extern "C" __declspec( dllexport ) HRESULT signFile(LPCWSTR fileName, LPCWSTR certSubject, LPCWSTR storeName);
HRESULT signFile(LPCWSTR fileName, LPCWSTR certSubject, LPCWSTR storeName)
我的一位同事试图通过JNA打电话给他们。
使用String作为参数失败(调用C ++函数,但参数无效)
使用WString也失败了。
不幸的是,JNA mappings没有引用LPCWSTR类型。
对此有什么想法吗?
答案 0 :(得分:2)
相当于LPCWSTR
和LPWSTR
的JNI是WString
。
Java字符串映射到char*
或LPSTR
或LPCSTR
,但我认为将是UTF-8结束编码,因此仍然可以传递完整的字符集。