tengo un programa escrito en C++ y hago uso de una librería que crea ficheros con nombre aleatorio. El código es el siguiente:
Código:
El problema que tengo es que después de un tiempo funcionando perfectamente, comienza a no ser capaz de crear los ficheros, pero no se el por qué. Para que sea capaz de volver a crearlos, es necesario cerrar el programa y volver a ejecutarlo, sino es imposible.char* file_save = new char[ file.size() + 1 ]; strcpy (file_save, file.c_str()); mkstemp (file_save); ofstream f_file_save (file_save, ios::out); if (!f_file_save) { syslog (LOG_DEBUG, "%s: don't create file",name.c_str()); delete file_save; return false; } else { f_file_save << faxImage << endl; f_file_save << faxModem << endl; f_file_save.flush(); f_file_save.close(); syslog(LOG_NOTICE, "%s: create new file: %s",name.c_str(),file_save); } delete file_save; return true;
No se por que es el fallo, unas veces sí, otras no. Los ficheros son texto plano y lo único que hace es crearlo con el nombre que se le pasa y luego escribir datos en él.
¿Alguna idea de por que falla? ¿Alguna otra librería que haga lo mismo? Tienes que ser multisistema (Linux/Windows).