AGB  ·  Datenschutz  ·  Impressum  







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

Indy für Dummies

Ein Thema von Exterminans · begonnen am 13. Jun 2011 · letzter Beitrag vom 2. Jul 2011
Antwort Antwort
Seite 1 von 7  1 23     Letzte »    
Exterminans

Registriert seit: 13. Jun 2011
20 Beiträge
 
Delphi 7 Enterprise
 
#1

Indy für Dummies

  Alt 13. Jun 2011, 19:21
ich bin totaler Neuling was Delphi und Programmieren angeht.

Daher die Frage: Kann mir hier IRGENDWER das mit den Indys erklären

-vorab:
-Ich hänge hier schon seit 3 Tagen an einem ,,simplen'' Programm.
-ich habe mir in verschiedenen Foren ,,ähnliche'' fälle angesehen.
-mir die Finger wund gegoogelt.
und dennoch nichts gefunden was in der Lage war mir dieses Wissen offenbaren.

mein programm sammelt die ins Formular eingetragenen Daten in einem Memo und speichert das memo als
.txt Datei.
nun müsste das programm diese daten an eine bestimmte (nach Möglichkeit) feste, zeitlich unbegrenzte
adresse(bin nicht sicher in wie weit man diese ,,Server'' nennen kann) versendet -und dort Gespeichert werden, jedoch ohne das dadurch einem ,,hacker'' den zugriff auf diese adresse(durch in meinem Programm vorliegende Daten) zu erleichtern.

ich weiß nicht ob ich die IdFTP oder IdHttp Komponente verwenden soll, oder ob etwas anderes vorzuziehen ist.
ich weiß nicht wie ich an die Parameter dafür komme.
ich weiß nicht wie ich diesen Komponenten die paramenter vermitteln muss.
komme und wie ich der Komponente sage was sie tun soll.

+KEIN Indy Vorwissen
+Keine ahnung von PHP & Co
(Anfänger, sag' ich ja)

von den 3 Tagen hab ich bloß ca 2 stunden bis zur aktuellen version des Programmes benötigt, seit dem hänge ich
an diesem Problem.

benötige dringend Hilfe
Fabian
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Indy für Dummies

  Alt 13. Jun 2011, 19:27
Formulatdaten hört sich sehr nach HTTP an. U.U. wäre dann ein TWebBrowser besser geeignet.

Was soll das Programm genau machen?
Markus Kinzler
  Mit Zitat antworten Zitat
Exterminans

Registriert seit: 13. Jun 2011
20 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Indy für Dummies

  Alt 13. Jun 2011, 19:38
Um genau zu sein geht es um einen Charaktertransfer für einen mmorpg server. Das programm bieted die möglichkeit die ,,Werte'' seines charakters einzugeben diese werden gespeichert um dann sofort verschickt zu werden sodas wir diese Angaben auswerten können und der Spieler mit (mehr oder weniger) dem selben Charakter den er vorher woanders hatte weiterspielen kann.

ignoriert die tatsache das die spieler falsche angaben machen können darum kümmer ich mich später^^
Fabian
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Indy für Dummies

  Alt 13. Jun 2011, 19:40
Eine eigense Seite oder wird auf eine vorhandene/fremde zugegriffen?
Markus Kinzler
  Mit Zitat antworten Zitat
Exterminans

Registriert seit: 13. Jun 2011
20 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Indy für Dummies

  Alt 13. Jun 2011, 19:47
nein wir ermöglichen dem Spieler sich einen Charakter zu erstellen, wie der den er sich erspielt hat, auf seinem alten
,,Spiele-Server'' mehr nicht.


wir haben eigene Webseite und Server
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: Indy für Dummies

  Alt 13. Jun 2011, 20:51
Zitat:
nun müsste das programm diese daten an eine bestimmte (nach Möglichkeit) feste, zeitlich unbegrenzte
adresse(bin nicht sicher in wie weit man diese ,,Server'' nennen kann) versendet -und dort Gespeichert werden, jedoch ohne das dadurch einem ,,hacker'' den zugriff auf diese adresse(durch in meinem Programm vorliegende Daten) zu erleichtern.
Häh? Lass mich das mal so zusammenfassen, wie ich das verstanden habe:
Du willst Daten an einen Server verschicken, willst dies aber erreichen, ohne dass es einem Dritten möglich ist, rauszufinden, an welchen Server du die Daten verschickt hast?

Falls das so stimmt, dann frage ich mich - wieso? (Designfehler?)
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Exterminans

Registriert seit: 13. Jun 2011
20 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: Indy für Dummies

  Alt 13. Jun 2011, 20:58
Ich erklär mein Problem noch mal

das Programm soll
auf jedem beliebigen (duchschnittlichen) Pc (WindowsXP bis Windows7) aus ausgeführt werden können (Kann Es)


Ein Fragebogen öffnet sich, dort können Werte eingetragen werden Inventar, Rüstung, Level usw.

Das Programm soll die von Benutzer eingegebenen Daten(als Txt) lokal auf dessen Pc zwischenspeichern.
(Kann Es)


und es soll
die dateien(txt und evtl. Bilddateien) auf knopfdruck des Benutzers an mich oder den Server senden.
(Kann Es Nicht)


das geht ,laut meiner Recherche mit Indys, aber alle bisher gelesenen Tutorials, und Erklärungen erwarten Vorwissen das ich nicht besitze.

die zu versendenen Daten und Dateien sind nicht vertraulich (sind bloß Werte wie z.B. Die Rüstung eines Chrakters oder dessen Zauber)^^.
Bloß darf man durch das oben genannte Programm Nicht an Verbindungsdaten gelangen können und sich somit unerlaubt zugriff zu dem Server(Empfänger) zu verschaffen.


ich brauche eine Anfänger gerechte Erklärung der Versendung von dateien mit
Delphi 7 enterprise, oder fertige Programmcodes
Alles was mein Problem beseitigt ist willkommen haupsache ich krieg dieses Programm hin.
Fabian

Geändert von Exterminans (13. Jun 2011 um 21:17 Uhr)
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Indy für Dummies

  Alt 13. Jun 2011, 21:43
die zu versendenen Daten und Dateien sind nicht vertraulich (sind bloß Werte wie z.B. Die Rüstung eines Chrakters oder dessen Zauber)^^.
Bloß darf man durch das oben genannte Programm Nicht an Verbindungsdaten gelangen können und sich somit unerlaubt zugriff zu dem Server(Empfänger) zu verschaffen.
Das geht prinzipiell nicht. Wenn dein Programm beim Nutzer laufen soll, muss es die Verbindungsdaten kennen. Somit ist es auch immer möglich, die Verbindungsdaten aus dem Programm zu extrahieren. An dem gleichen Problem scheitern ja auch alle Kopierschutzmechanismen. Das einzige, was du machen kannst, ist, die Daten zu verschleiern, um das Extrahieren möglichst aufwendig zu machen.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#9

AW: Indy für Dummies

  Alt 13. Jun 2011, 21:53
Hi,

ich denke, es ist die Frage, wie man Verbindungsdaten definiert.
FTP-Upload wäre sicherlich kritisch, da jemand mit diesen Daten dann uU ja auch wieder was löschen könnte etc.

Realisiert man den Upload aber bspw. über ein (PHP-)Skript, dann gibt es als Verbindunsdaten ja "nur" die URL zu dem Skript und damit alleine kann man (wenn das Skript sicher ist), erstmal nicht so viel Schaden (bis keinen) anrichten.



LG, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Darkface

Registriert seit: 18. Apr 2008
89 Beiträge
 
Delphi XE Professional
 
#10

AW: Indy für Dummies

  Alt 13. Jun 2011, 23:25
Ich denke auch das man mit PHP eine "sichere" Lösung auf rellativ einfachem Wege erreichen kann. Dazu ist eigenlich nur ein PHP-fähiger Webserver auf Empfänger Seite erforderlich und ein Code nach etwa diesem Schema:

Delphi Client:
(Nutzung der Indy TIdHTTP-Komponente)
Delphi-Quellcode:
function SendeAnScript(ScriptAddr:string, Felddaten:string): string;
var Parameter: TStringList;
begin
  Parameter := TStringList.Create;
  Parameter.Add(Felddaten);
  try IdHTTP1.Post(ScriptAddr, Parameter);
  finally Parameter.Free;
  end;
end;
Aufruf:
Delphi-Quellcode:
var rck:string //falls das Script eine Rückgabe liefert, wie "Erfolgreich übermittelt" oder "Fehler Feld xyz fehlt..."
begin
rck:=SendeAnCript('http://server.adresse/script.php','daten=' +Memo1.Text); //Ich vermute mal die Daten stehen in einem Memo oder in ähnlichem...
//das "daten=" vor den eigentlichen Felddaten ist der Name des übergebenen Parameters wie er vom PHP Script später erwartet wird (sowie ein = dran :D)
Ein sehr einfaches PHP-Script könnte so aussehen (Optimierungen hinsichtlich Spam, Sicherheit ect. wären Beispielsweise noch angebracht)...:
Code:
<?php
  mysql_connect("localhost", "Nutzername","Passwort") or die ("Keine Verbindung moeglich");
  mysql_select_db("Datenbankname") or die ("Die Datenbank existiert nicht.");

  $daten= $_POST["daten"];
  mysql_real_escape_string($daten);

  //hier Möglicherweise noch eine Auswertung der Daten, prüfen auf fehlende Inhalte etc. wenn nicht schon in Delphi geschehen

  $eintrag = "INSERT INTO Tabellenname (DatenSpaltenname) VALUES ('$daten')";
  $eintragen = mysql_query($eintrag);

  echo 'Dies wird IMMER zurückgegeben';
?>
Ungetestet.
Der Webserver auf Empfänger Seite sollte natürlich sicher Konfiguriert sein.

MfG
Alexander
Ich halte Ordnung.
Zum Beispiel mein Schreibtisch: Hier ist alles zeitlich geordnet - was zuletzt kam, liegt oben. (Frank Erhoff)

Geändert von Darkface (13. Jun 2011 um 23:49 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 7  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 22:51 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