Entwickler-Ecke
Internet / Netzwerk - Übers web ne datei vergleichen
Andreas L. - Fr 29.08.03 21:11
Titel: Übers web ne datei vergleichen
Hi Leutz,
wie stelle ich das an:
Im Programmverzeichnis der exe is ne datei, die heißt uptodate.updatefile. Sie hat den Inhalt 1. Jetzt soll mein Proggi eine Verbindung zum Netz herstellen und eine datei auf meinen server öffnen die genau so wie die vorhin gennannte heißt. Nun soll der Inhalt überprüft werden. Steht in der Datei 2 drin, soll eine weitere Aktion ausgeführt werden und die lokale Datei erneuert werden (quasi, es soll auch 2 drin stehen). Wichtig ist dabei das jedesmal wenn eine höhere Zahl drin steht das ganze auch fungiert. Wenn die gleiche Zhal drin steht soll ne Meldung ausgebeben werden.
Greetz
UC-Chewie - Fr 29.08.03 21:35
Wo ist das Problem? Datei runterladen, Inhalt einlesen und dann entsprechend reagieren.
Stichwort: URLDownloadToFile oder etwas einfacher: Die Indys.
Andreas L. - Fr 29.08.03 21:41
Schon klar das, dass so geht aber eben das überprüfen der zahlen in den dateien ist schwer. weil ja es immer verscheidene gibt. Also, die Zahl wird immer erhöht.
Taurin - Fr 29.08.03 22:22
Wie ich das verstanden habe, möchtest du (wahrscheinlich aus
Zeitgründen) nicht die ganze Datei runterladen, sondern nur
die eine Zahl ausleden und vergleichen (Versionsnummer?).
Speicher doch die Version in einer Extra-Datei, dann sparst du
Download-Zeit (indem du nicht alles runter laden musst) und hasst
nicht den Ärger, die Datei nur zum Teil anzusehen.
Oder hab ich dich jetzt falsch verstanden?
Dann nehme ich alles zurück und behaupte das Gegenteil :P
ErnestoChe - Sa 30.08.03 00:45
Hi,
nimm am besten eine Ini-Datei. Deine lokale Ini sieht dann z.B. so aus:
[version]
vers=1
und die auf dem Server:
[version]
vers=2
Die Datei ist nur ein paar byte gross und ist in einer Sekunde runtergeladen. Dann öffnest du in einer prozedur beide Dateien und weisst die Werte zwei Integervariablen zu und vergleichst sie:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| var iniLocal, iniServer: TIniFile; iLocal, iServer: Integer; begin iniLocal := TIniFile.Create('\version\version.ini'); iniServer := TIniFile.Create('version.ini'); try iLocal := iniLocal.ReadInteger('version', 'vers', -1); iServer := iniServer.ReadInteger('version', 'vers', -1); if iServer > iLocal then Label1.Caption := 'Es liegt eine neuere Version vor' else Label1.Caption := 'Es liegt keine neuere Version vor'; finally iniLocal.Free; iniServer.Free; end; end; |
MFG
- Ernesto -
Andreas L. - Sa 30.08.03 11:01
Ich hab der Version schon eine eigene Datei gegeben :-) Ini-Files möchte ich nicht verwenden. Das mit den runterladne is ja kein Prob. Aber wie vergleiche ich? Wenn die runtergeladene Version in der Datei höher is als die lokale soll eine Aktion von mir durchgeführt werden.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 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!