TMemIniFile im Netzwerk



  • Ich habe ein Programm, das im Netzwerk mit einem XP und einem 98 Rechner auf einen NT-Server zugreift. In dem Programm werden Informationen mit Hilfe von TMemIniFile in eine Datei auf dem NT-Server gespeichert.
    Unter XP läuft das wunderbar, nur unter 98 wird in ca 95% aller Fälle nicht gespeichert. Ich bin dann auf TIniFile umgestiegen und siehe da: Es läuft bei beiden. Der Haken ist allerdings, das nun unter XP ca. 1 min zum Speichern einer 300k Datei benötigt wird.

    Meine Frage:
    Wieso läuft TMemIniFile nicht unter 98? Wieso braucht TIniFile unter XP soviel länger als unter 98?

    Meine Überlegung:
    Ich habe das Programm unter XP compiliert, lohnt die Mühe es mal unter 98 zu compilieren und es dann zu versuchen??



  • TMemIniFile::UpdateFile() hast du eingfügt, ja?

    -junix



  • Ja hab ich, es läuft ja unter XP?!

    TMemIniFile* ini= new TMemIniFile(winterVar->DateiName.c_str());
    ini->WriteInteger("Termine","Anzahl",winterVar->termine.size());
    ini->WriteInteger("Termine","Version",2);
    ini->WriteDateTime("Termine","TimeStamp",Now());
    for(unsigned int i=0; i<winterVar->termine.size(); ++i)
    {
      Termin* t=winterVar->termine.at(i);
      ini->WriteString(i,"Titel",t->titel.c_str());
      ini->WriteString(i,"Klasse",t->klasse.c_str());
      ini->WriteInteger(i,"Typ",t->typ);
      ini->WriteInteger(i,"Vorlauf",t->vorlauf);
      ini->WriteInteger(i,"Periode",t->periode);
      ini->WriteInteger(i,"VornHinten",t->vornHinten);
      ini->WriteBool(i,"Aufbewaren",t->keep);
      ini->WriteBool(i,"Merken",t->merken);
      ini->WriteBool(i,"Ende",t->ende);
      ini->WriteDate(i,"Datum",t->datum);
      ini->WriteDate(i,"Start",t->erster);
      ini->WriteDate(i,"Letzter",t->endeDatum);
    }
    ini->UpdateFile();
    


  • Hab gerade das in der Hilfe gefunden:

    Da die Daten von C++Builder und nicht vom Betriebssystem in die INI-Datei geschrieben werden, werden Änderungen in allen unterstützten Windows-Versionen schneller gespeichert.

    Ist das vielleicht das Problem, das Borland da Mist gebaut hat???


Anmelden zum Antworten