AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speichern ohne txt.

Ein Thema von thiagojonas · begonnen am 24. Sep 2008 · letzter Beitrag vom 25. Sep 2008
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
thiagojonas

Registriert seit: 31. Aug 2008
Ort: Wolfenbüttel
338 Beiträge
 
#1

Speichern ohne txt.

  Alt 24. Sep 2008, 14:04
Hallo Leute. Gibt es eine Möglichkeit z.B. den Inhalt einer ComboBox "intern" zu speicehrn. Also so speichern, dass man sie nicht laden muss(.txt,.dat,etc.)?
Weil das könnte ja jeder ran gehen und sie löschen. Es soll sozusagen nur über das Programm funktionieren.
Ich als Falsher, weiß dass das in Flash über SharedObjekt funktioniert(Flashcookies).
Geht das auch in Delphi? Wenn ja wo kann ich mehr darüber erfahren?
Danke
  Mit Zitat antworten Zitat
BullsEye

Registriert seit: 8. Sep 2007
Ort: Werlte
872 Beiträge
 
Delphi 7 Personal
 
#2

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 14:08
Nur halt die Items die du normal schon im OI eingibst.

Aber wenn du den Inhalt zur Laufzeit änderst, dann halt nur in einer INI File, ist aber eig das gleich wie ne Textdatei...
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.685 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 14:14
Nun ja, egal wo und wie du Daten speicherst, sie werden immer von aussen mindestens entfernbar sein. Separate Dateien sind zunächst einmal einfach zu erwischen, aber auch Cookies sind nichts anderes. Die eigene .exe zu manipulieren geht durchaus über ein paar Umwege (Stichwort Resourcen), ist aber mindestens genau so unschön wie das ebenfalls zumindest technisch mögliche "vollmüllen" der Registry mit Anwendungsdaten. Beides zählt aber ganz klar zu den No-Gos in der Anwendungsentwicklung.
Um solche Dinge zu speichern gibt es in der Windowswelt den %APPDATA% Pfad, in den du deine Dateien speichern solltest - damit bist du dann auch endgültig auf der sicheren Seite, da jeder noch so eingeschränkte Benutzeraccount ein solches eigenes Verzeichnis besitzt und auf jeden Fall dort Schreibrechte hat. Das ist bei sllen anderen Varianten nicht gegeben, und dadurch werden sie vom No-Go zum No-Go mit grottigem Stil

Und wer seine Daten mutwillig auf diese Weise zerschießen will... soll das dann eben bitte tun, aber nachher nicht weinen
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
BullsEye

Registriert seit: 8. Sep 2007
Ort: Werlte
872 Beiträge
 
Delphi 7 Personal
 
#4

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 17:10
Aber du solltest bedenken, das es bei vielen, gerade wenn es darum geht dein Programm zu testen, nicht gern gesehen ist, wenn du in der Registry bzw in irgendwelchen Pfaden speicherst, die nicht zum Anwendungsverzeichniss gehören.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 17:16
Ihr versteht ihn alle nicht oder?

Um den Inhalt einer ComboBox "intern" zu speichern musst du so vorgehen:

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    ComboBox1: TComboBox;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    Sicherung: TStringlist;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

// Stringliste muss erstellt werden bevor sie benutzt wird...
procedure TForm1.FormCreate(Sender: TObject);
begin
  Sicherung:= TStringlist.Create;
end;

// und wenn sie nichtmehr gebraucht wird, muss sie freigegeben werden.
procedure TForm1.FormDestroy(Sender: TObject);
begin
  Sicherung.Free;
end;

// "Speichern"
procedure TForm1.Button1Click(Sender: TObject);
begin
  Sicherung.Assign(ComboBox1.Items);
end;

// "Laden"
procedure TForm1.Button3Click(Sender: TObject);
begin
  ComboBox1.Items.Assign(Sicherung);
end;

// Combobox Leeren
procedure TForm1.Button2Click(Sender: TObject);
begin
  ComboBox1.Clear;
end;
Generell speichert man Dinge einfach in Variablen. Einen String, in einer Stringvariablen, einen Integer in einer Integervariable etc. Ganz viele Strings kann man entweder in einem Array of String speichern oder eben in einer TStringlist.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von jokerfacehro
jokerfacehro

Registriert seit: 13. Feb 2007
306 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 17:21
ich weiß ja nicht worums dir genau geht, wenns dir darum geht intern zu speichern musste die exe ändern, wenns dir darum geht keine txts zu verwenden kannste deine combox direkt als datei speichern und so ganz leicht laden, kein füllen von datenfeldern, sondern einfach laden
"Never touch a running system administrator !"
  Mit Zitat antworten Zitat
BullsEye

Registriert seit: 8. Sep 2007
Ort: Werlte
872 Beiträge
 
Delphi 7 Personal
 
#7

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 17:33
Vielleicht sollte er sein Problem doch etwas genauer beschreiben um bessere Hilfe zu bekommen!

Stringlist hin oder her, ist ja ganz gut, allerdings wird das nur zur Laufzeit gespeichert, genau wie Variablen, stürzt das Programm dann bsp mal ab ist alles weg. Kommt aber drauf an, für welche Zwecke er sein Programm benutzt.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 17:34
Achso... mhh kann doch sein, dass er es anders meint, als ich dachte
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
thiagojonas

Registriert seit: 31. Aug 2008
Ort: Wolfenbüttel
338 Beiträge
 
#9

Re: Speichern ohne txt.

  Alt 24. Sep 2008, 17:41
Zitat von Neutral General:
Ihr versteht ihn alle nicht oder?

Um den Inhalt einer ComboBox "intern" zu speichern musst du so vorgehen:


Generell speichert man Dinge einfach in Variablen. Einen String, in einer Stringvariablen, einen Integer in einer Integervariable etc. Ganz viele Strings kann man entweder in einem Array of String speichern oder eben in einer TStringlist.
Danke genau das meinte ich
  Mit Zitat antworten Zitat
thiagojonas

Registriert seit: 31. Aug 2008
Ort: Wolfenbüttel
338 Beiträge
 
#10

Re: Speichern ohne txt.

  Alt 25. Sep 2008, 12:57
So habe das jetzt bewältigt Funktioniert auch super!
Kann man das jetzt auch so "intern" speichern, dass wenn man das Programm schließt und es dann wieder öffnet und auf "Load" klickt, die Daten geladen werden?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz