Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#30

Re: IniFile wird nicht erstellt

  Alt 6. Jan 2009, 10:03
Hallo,
Zitat von implementation:
@nahpets: Der sagt mir Workspace sei 0. In ReadInteger scheint also gar nichts zu passieren. Ansonsten wäre es ja zumindest der Wert von PaintGreen.
Eine Exception wird nicht ausgelöst.
Dann liegt die Vermutung nahe, dass die INI-Datei irgendwo erstellt wird/wurde, aber nicht an der vermuteten Stelle.
Weise dem ReadInteger mal einen festen Vorgabewert zu und schau dann, ob immernoch die 0 geliefert wird. Wenn ja, muss die aus irgendeiner INI gelesen werden, dann hilft Dir (vermutlich) nur, mal die Festplatte nach 'ner Config.ini zu durchsuchen.

Delphi-Quellcode:
initialization
  Ini := TIniFile.Create(ExtractFilePath(Application.Exename) + 'Config.ini');
  ShowMessage(ExtractFilePath(Application.Exename) + 'Config.ini');
  try
    try
      Workspace := Ini.ReadInteger('Colors', 'Workspace', 4711); // <- festen Vorgabewert zuweisen
      ShowMessage('Workspace ist: ' + IntToStr(Workspace)); // wenn 0, muss es irgendwo die INI-Datei geben!!!
      // und jetzt noch mal 'nen Test mit einem Wert, den es höchstwahrscheinlich nicht gibt:
      Workspace := Ini.ReadInteger('IstDochEgalWasHierSteht', 'HauptsacheGibtEsNicht', 4812);
      ShowMessage('Workspace ist: ' + IntToStr(Workspace)); // Hier sollte jetzt aber als Ergebnis 4812 kommen!!!
    except
      on e : Exception do begin
        ShowMessage('Es ist ein Fehler beim Lesen aufgetreten: ' + e.Message);
      end;
    end;
  finally
    FreeAndNil(Ini);
  end;
finalization
  Ini := TIniFile.Create(ExtractFilePath(Application.Exename) + 'Config.ini');
  try
    Try
      Ini.WriteInteger('Colors', 'Workspace', Workspace);
      ShowMessage('Workspace ist: ' + IntToStr(Workspace));
    except
      on e : Exception do begin
        ShowMessage('Es ist ein Fehler beim Schreiben aufgetreten: ' + e.Message);
      end;
    end;
  finally
    FreeAndNil(Ini);
  end;
end.
  Mit Zitat antworten Zitat