No he mirado todo tu código, solo la última parte pero... Deberías no cerrar el archivo dentro del while().
Saca el:
fuera del while() de esta manera:
y dime si te funcionó.
Saca el:
Código (cpp) [Seleccionar]
archivo.close();
fuera del while() de esta manera:
Código (cpp) [Seleccionar]
while(aux != NULL){
archivo << aux;
aux = aux->sigue;
}
archivo.close();
y dime si te funcionó.