Mensaje    Asunto: Incremento del uso de RAM en pdas Responder citando

Muy buenas.
En el programa que tengo entre manos, se accede mediante java a una dll compilada en C++, por lo que uso un proyecto en C++ para hacer de puente. La susodicha biblioteca es DTX10M30E.dll, y tiene algo que ver con el manejo del cMOS del lector de código de barras de una PDA. El problema es que, con esta biblioteca intermedia, la RAM que usa el programa (solo ejecutando, no leyendo códigos) va aumentando lenta pero inexorablemente, hasta colapsar la pda.
El código es el siguiente:

Código:
TCHAR      wcMessage[4100],chCodeID, chSymLetter, chSymModifier;
      WORD      nLength;
      Result_t   Result;      
      //Si no se ha llamado a init no leo
      if(iniciado)
      {
         
            
            //asigno la memoria a wcMessage y la relleno con 0
            //wcMessage=(TCHAR *)malloc(sizeof (TCHAR)*4100);
            ZeroMemory ( wcMessage,  sizeof wcMessage );
            
            //llamo al lector y le digo que espere 10 seg maximo antes de desactivarse
            Result = TDWaitForDecode( 10000, wcMessage, &chCodeID, &chSymLetter,
                          &chSymModifier, &nLength, Trigger );
      
                  
            //si todo ha ido bien  devuelvo la cadena leida
            Result=RESULT_SUCCESS;
            if( Result==RESULT_SUCCESS )
            {
                                       
            
                  datos=CString(wcMessage);                  
                  //datos=CString("1234r");                  
                  jstring jCadena = env -> NewString((const jchar *)(LPCTSTR)datos, datos.GetLength());                  
                  leyendo=false;                  
                  return jCadena;                                          
            }         
      }


Tengo dudas sobre si el problema no estaría en la llamada a Zeromemory, que luego no se está eliminando bien.
Se agradecen sugerencias ^^
_________________
All your base are belong to me