VC写给java的dll 如何调试这个dll啊?求教各位高手!!
我写了个测试程序,让其循环调用,观察内存一直不断的增长,想必是有泄漏,但从代码上看不出来什么,想调试下dll看看,但我初出茅庐不会。求教各位高手!!感觉上可能会有泄漏但不太了解的地方 我贴一下,求教!
CString jstring2CString(JNIEnv* env, jstring jsPara)
{
LPCSTR lpcsString = env->GetStringUTFChars(jsPara, NULL);
// 得到UTF-8编码的字符串长度
int nLength = 0;
nLength = MultiByteToWideChar(CP_UTF8, 0, lpcsString, -1, NULL, NULL);
LPWSTR lpwsPara = new WCHAR[nLength];
MultiByteToWideChar(CP_UTF8, 0, lpcsString, -1, lpwsPara, nLength);
CString sPara(lpwsPara);
delete lpwsPara;
return sPara;
}
jstring CString2jstring(JNIEnv *env,CString Str)
{
char *cStr=Str.GetBuffer(Str.GetLength());
int slen = strlen(cStr);
if(!env||slen==0)
return NULL;
jchar* buffer = new jchar[slen];
int len = MultiByteToWideChar(CP_ACP,0,cStr,strlen(cStr),(LPWSTR)buffer,slen);
if(len>0 && len < slen)
buffer[len]='\0';
jstring js = env->NewString(buffer,len);
Str.ReleaseBuffer();
delete cStr;
delete buffer;
return js;
} VC dll java --------------------编程问答-------------------- 没接触过java
jstring js
return js
====
如果jstring没有提供 拷贝构造函数 ,可能会有问题。
补充:.NET技术 , VC.NET