Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Zähler Speichern
chickenfigt1989 - Do 07.04.11 11:34
Titel: Zähler Speichern
Hallo
Habe ein Kontaktformular.
Jedes mal beim absenden der Mail wird per inc(zähler)
der stand um eins hochgezählt
diesen wert speicher ich in einer ini datei.
Wenn nun der wert die zahl 4 erreicht hat soll der button support enabled werden.
Doch jedesmal wenn das programm neu gestartet wird, fängt der zähler bei 0 an.
Ich will aber das der zähler bei der zahl die in der ini steht anfängt.
Wie mach ich das?
lg
pwsolaris - Do 07.04.11 11:44
Wenn du schon in einer Ini Datei speicherst... wie wäre es dann mit dem Auslesen dieser ini-Datei beim Programmstart?
chickenfigt1989 - Do 07.04.11 11:47
Auslesen tu ich die daten ja auch nur wie weis ich dem zähler die zahl z uwo er anfangen muss?
So gehts nicht:
Delphi-Quelltext
1:
| Zaehler:=ini.Readstring('Support','Gesendet',''); |
lg
DonManfred - Do 07.04.11 11:51
Unsere Glaskugel ist leider gerade defekt... Bis der defekt behoben ist musst Du schon etwas mehr Informationen (Quelltext) liefern damit wir helfen können.
Wie heisst denn der zähler (variablenname) den Du da hochzählst?
Warum speicherst Du den Zähler als STRING? Integer wäre doch viel sinnvoller.
pwsolaris - Do 07.04.11 11:54
Speicherst du noch mehr Werte in deine INI Datei und werden diese auch nicht richtig ausgelesen?
Wie mein Vorposter schon geschrieben hat... mehr Infos und ein wenig mehr Code wären hilfreich ;)
chickenfigt1989 - Do 07.04.11 12:04
Also ich speicher mehr werte in der ini
Die werden aber alle richtig gespeichert und auch richtig ausgelesen
Speichern tu ich es so:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| var data: TIdMultiPartFormDataStream; ini: TIniFile; begin ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+ 'config.ini'); Inc(Zaehler); Edit4.text:=IntToStr(Zaehler); Edit4.text := XorStr(Edit4.text, 15); ini.WriteString('Support','Gesendet', Edit4.text); Form1.Edit1.Text:=Edit4.text; Form1.Edit1.text := XorStr(Form1.Edit1.text, 15); |
Und auslesen so:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| var ini: TIniFile; begin ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+ 'config.ini'); Edit4.Text:= ini.ReadString('Support','Gesendet', ''); Edit4.text := XorStr(Edit4.text, 15); |
lg
Tankard - Do 07.04.11 12:08
wo ist denn da bitte schoen die zuweisung, ausgelesen aus ini datei und die zuweisung zum zaehler????
chickenfigt1989 - Do 07.04.11 12:13
Ja ich weis eben nicht wie ihc den ini wert den zähler zuweis deswegen frag ich doch hier
lg
zuma - Do 07.04.11 12:16
wir wärs mit
Delphi-Quelltext
1:
| zaehler := StrToInt(ini.ReadString('Support','Gesendet', ''); |
Tankard - Do 07.04.11 12:17
zaehler:=inttostr(edit4.text);
edit: aehm meinte natuerlich strtoint.
man, man, geh raus, setz dich in die sonne. das ist produktiver und macht auch spass.
Tankard - Do 07.04.11 12:19
weiss garnicht wie oft man ihm den link geschickt hat, aber er findet ja immer wieder doofe die ihm helfen. da kann man sich das lesen ja sparen.
chickenfigt1989 - Do 07.04.11 12:23
Oke hat geklappt mach es nun mit:
Delphi-Quelltext
1:
| zaehler:=StrtoInt(edit4.text); |
Ist es auch irgendwie möglich dass man noch einbaut, dass man jeden Tag soviel frei mails hat?
lg
DonManfred - Do 07.04.11 12:43
Machbar ist alles. Ist alles nur eine Frage des Aufwandes.
Du solltest Dir vielleicht erstmal ein ordentliches Konzept erarbeiten was das Programm können nuss und Dir dann Gedanken machen zu können wie man die einzelnen Funktionen umsetzen könnte.
OffTopic:
Du wurdest hier schon vor Monaten - IMHO zu recht! - als Lern- bzw. Beratungsresistent bezeichnet... Wie mir scheint hast Du in all den Monaten NICHTS davon mitgenommen. Da stellt sich mir die Frage "Wozu soll ich versuchen zu helfen wenn Du es eh nicht verstehen willst (oder nicht in der Lage bis; keine Ahnung)?
Ich für meinen Teil werde künftige Postings von Dir nun tunlichst meiden; mir ist meine Zeit zu schade sie für einem Copy&Paste-Coder zu verschwenden der Beispielcode braucht den er dann kopieren kann ohne es verstehen zu müssen.
Mein Tip für Dich: Lasse es sein mit dem Programmieren und suche Dir eine Beschäftigung wo man nichts lernen muss. Strassenfeger wäre vielleicht passend.
Programmieren scheint jedenfalls nicht deine Welt zu sein!
Gausi - Do 07.04.11 12:55
chickenfigt1989 hat folgendes geschrieben : |
Ist es auch irgendwie möglich dass man noch einbaut, dass man jeden Tag soviel frei mails hat? |
Nein. IIRC wurde 2006 von einem chinesischen Mathematiker bewiesen, dass dieses Problem algorithmisch unlösbar ist (zumindest für den Fall P ungleich NP, wovon aber allgemein ausgegangen wird).
Ansätze, die darauf basieren, dass man sich in der Ini-Datei nicht nur den Zähler, sondern auch das jeweilige Datum merkt und entsprechend abfragt, werden zwar immer wieder mal auf zwielichtigen Internet-Seiten propagiert, aber das halte ich für Unsinn. :nixweiss:
chickenfigt1989 - Do 07.04.11 14:01
Oke zurück zum Thema
hab die ini verschlüßelt bzw. die einträge
ist es möglich die ini aufm ftp anlegen zu lassen also das von jedem user die ini aufm ftp ist? dan bräucht ich se ned verschlüßeln.
lg
Gausi - Do 07.04.11 14:11
Das wäre ein falscher und sehr unsicherer Ansatz: Wenn du die Daten auf den FTP-Server speicherst, dann kann der Anwender sehr leicht an die Zugangsdaten des FTP-Servers gelangen und dort beliebig Daten manipulieren.
Besser wäre es, wenn du den Mailzähler auf dem Server implementierst (z.B. in PHP) und das Kontakformular bzw. die Mail nur dann abschickst, wenn dieser Zähler das "Ok" gibt.
Aber zur Machbarkeit: Ja, das geht. Datei vom FTP-Server mit Hilfe der Indy-Komponenten holen, lesen, bearbeiten und wieder hochladen.
KleinesPferd - Do 07.04.11 14:20
Gausi hat folgendes geschrieben : |
.. Indy.. |
Indy ??? War das nicht der Spritzname vom Hund von Prof. H. Jones? Dem trau ich das wirklich zu. Aber ich bezweifle das man seine Klaue lesen kann.
Grüße und so
glotzer - Do 07.04.11 14:21
wie wärs mit ner umfrage: "bitte nicht wiederbeleben?"
mal ehrlich: hör auf andere leute hier damit zu nerven das du nicht hören willst.
kann man jemanden wegen nerven bannen?
Oliver Marx - Do 07.04.11 14:22
Hi,
Gausi hat folgendes geschrieben : |
Das wäre ein falscher und sehr unsicherer Ansatz: Wenn du die Daten auf den FTP-Server speicherst, dann kann der Anwender sehr leicht an die Zugangsdaten des FTP-Servers gelangen und dort beliebig Daten manipulieren. |
das mit der Sicherheit dürfte bei ihm zweitrangig sein:
http://www.delphi-forum.de/viewtopic.php?t=99780.
Oliver
jaenicke - Do 07.04.11 14:39
chickenfigt1989 hat folgendes geschrieben : |
ist es möglich die ini aufm ftp anlegen zu lassen also das von jedem user die ini aufm ftp ist? dan bräucht ich se ned verschlüßeln. |
Lies deine eigenen Threads... Die Frage wie du Textdateien auf dem Server ändern kannst hattest du schon selbst gestellt und beantwortet bekommen, wenn ich mich nicht sehr irre... :roll:
chickenfigt1989 - Do 07.04.11 15:32
glotzer hat folgendes geschrieben : |
wie wärs mit ner umfrage: "bitte nicht wiederbeleben?"
mal ehrlich: hör auf andere leute hier damit zu nerven das du nicht hören willst.
kann man jemanden wegen nerven bannen? |
Was bistn du für einer?
Dich sollte man in den Keller sperren und wie bei Saw 7 leiden lassen.
Aber echt hey
für was gibtsd den isl ein forukm
da s man fregt wwen mann hilfe braucht oda
du bist a bloß so oana der ogem mechd weil er anscheind osi ko
ha rechtschreibfehler extra eingebaut
könnt mih schon bannen i kum wieda keine angst
einfach proxy benutzen oder router reset und fertig
Gausi - Do 07.04.11 15:42
Hier wird keiner in den Keller gesperrt. Das einzige, was hier jetzt gesperrt wird, ist dieser Thread.
Die ursprüngliche Frage ist ja auch beantwortet.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!