Autor Beitrag
ph0g
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Do 10.03.11 12:54 
Guten Tag,
bin noch relativer Anfänger in Delphi und möchte nun etwas mit Curl in Delphi machen, da die Indy HTTP Componente nicht so funktioniert wie ich es mir vorstelle und daher dazu gezwungen bin curl zu benutzen.

Leider weiss und verstehe ich nicht, wie ich curl in Delphi "implementieren" kann. Habe mir schon dirverse Sachen bei Google rausgesucht, aber eine lauffähige Lösung habe ich nicht bekommen.

Würde mich sehr freuen, wenn mir hier jemand helfen kann.

Gerne auch in ICQ: 749386


Moderiert von user profile iconNarses: Topic aus Sonstiges (Delphi) verschoben am Do 10.03.2011 um 13:10
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10181
Erhaltene Danke: 1254

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Do 10.03.11 14:15 
Moin und :welcome: im Forum!

user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
möchte nun etwas mit Curl in Delphi machen, da die Indy HTTP Componente nicht so funktioniert wie ich es mir vorstelle und daher dazu gezwungen bin curl zu benutzen.
Aha? Was genau sollte das denn sein? :gruebel:

user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
Leider weiss und verstehe ich nicht, wie ich curl in Delphi "implementieren" kann.
Ich habe mir zugegebenermaßen das Ganze nicht näher angesehen, aber "theoretisch" holst du dir die .h-Datei für C(++) und portierst die Deklarationen für die DLL-Funkionen in einer Delphi-Unit. :idea:

user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
Gerne auch in ICQ:
Der Sinn eines Forums ist es eine Problemlösung hier zu erarbeiten, wir sind ja keine Kontaktbörse. So hat auch jemand was davon, der später mal zu dem gleichen Problem eine Lösung sucht. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Nano-Ware
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 394
Erhaltene Danke: 7



BeitragVerfasst: Do 10.03.11 14:44 
Eine andere Frage ist, was die Indy Komponenten denn nicht erfüllen, was du aber gerne hättest
ph0g Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Do 10.03.11 15:41 
Also, erstmal vielen Dank für eure Antworten.
Mit Indy HTTP rufe ich eine Webseite auf, problem ist aber, dass diese eine 302 weiterleitung via htaccess vermutlich auf eine andere macht, und ich demnach nicht an den Quelltext oder generell irgendwas rankomme, da Delphi eine Fehlermeldung mit besagtem Fehler 302 ausgibt.
Dann habe ich mir gedacht, aktiviere ich: Followredirects und dann kriege ich erneut eine Fehlermeldung mit 500 - Interner Server Error. Bin mir aber zu 100% sicher, dass es nicht am Server liegt. Wenn ichs manuell ansurfe, gehts schließlich auch...
turboPASCAL
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 193
Erhaltene Danke: 1

Win XP / Vischda
D6 PE / D2005 PE
BeitragVerfasst: Do 10.03.11 15:44 
Mahlzeit,

Crosspost in der DP.
www.delphipraxis.net...%5D.html#post1087323

_________________
Nein, ich bin nicht der turboPASCAL aus der DP, ich seh nur so aus... :P
ph0g Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Do 10.03.11 15:47 
Ist das verboten? Was spricht dagegen 2 Quellen für eine Lösung seines Problems zu beanspruchen?
guinnes
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 182
Erhaltene Danke: 14



BeitragVerfasst: Do 10.03.11 15:56 
user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
Ist das verboten? Was spricht dagegen 2 Quellen für eine Lösung seines Problems zu beanspruchen?
Ne, es spricht aber was dagegen, die Threads nicht gegenseitig zu verlinken
turboPASCAL
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 193
Erhaltene Danke: 1

Win XP / Vischda
D6 PE / D2005 PE
BeitragVerfasst: Do 10.03.11 16:22 
user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
Ist das verboten?

Nein, nicht das ich wüsste. Ist aber meiner bescheidenen Meinung nach anständiger...

user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
"Was spricht dagegen 2 Quellen für eine Lösung seines Problems zu beanspruchen?

Auch nichts.

Was spricht für die Verlinkung von Multiposts ?
  • Ein schnellerer Weg zum Ziel.
  • Es kann Anderen helfen.
  • Es ist möglich das Teillösungen in anderen Foren dazu beitragen eine bessere oder Komplettlösung zu erarbeiten.
  • ...



Da ich schon am meckern bin, Curl kennt nicht jeder. Wenn ich diesen Thread / diese Frage hätte würde ich kurz erläutern
was Curl ist, damit Unwissende wissender werden.
Denn manchmal kommen dem einen oder Anderen auch gute Ideen...

_________________
Nein, ich bin nicht der turboPASCAL aus der DP, ich seh nur so aus... :P
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Fr 18.03.11 11:45 
Da ich keine Ahnung hab was Curl ist, hab ich einfach mal gegoogelt :D

Das sieht doch ganz gut aus:
curl.haxx.se/libcurl/pascal/

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
ph0g Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Fr 18.03.11 15:46 
Leider verstehe ich es trotzdem noch nich wie ich es jetzt eingebunden kriege.... Ich hab mal diese curlobj.pas in die Projektdatei gezogen aber dort kamen nur fehler auf.. bräuchte eine "schritt für schritt" anleitung :P
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Fr 18.03.11 17:24 
Du packst die Unit irgendwo hin und dann öffnest du mit [Projekt]>[Dem Projekt hinzufügen]. Das sollte noch keine Fehlermeldungen geben. Und dann musst du halt mal gucken, was die Fehlermeldungen sagen wenn du die Unit benutzen willst. Schritt-Für-Schritt Anleitungen gibts halt nicht immer, manchmal muss man auch selbst sich überlegen warums nicht geht ;)

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
ph0g Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Fr 18.03.11 17:33 
Der Fehler liegt in der curlobj.pas die ich von der Curlseite downloade. Der Fehler erscheint erst wenn ich alles kompilieren will...
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Fr 18.03.11 17:40 
Was sagt der Fehler denn? Wo kommt er? Wenn er in der pas liegt, hält dann nicht der Compiler dort? Sonst mal mit Breakpoints probieren.

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
ALF
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1085
Erhaltene Danke: 53

WinXP, Win7, Win10
Delphi 7 Enterprise, XE
BeitragVerfasst: Fr 18.03.11 17:50 
Jo und dann noch CrossPost
Was steht den in den AGBs der Seite?

Aus der DP von @phog
Zitat:
Weil es nicht geht... Ich darf die Seite leider nicht nennen um die es sich handelt, ich muss formulardaten an eine Seite senden, und warum auch immer, geht es nur mit curl.

ALf

_________________
Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
freimatz
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mo 28.03.11 17:19 
user profile iconXion hat folgendes geschrieben Zum zitierten Posting springen:
Da ich keine Ahnung hab was Curl ist, hab ich einfach mal gegoogelt :D

Das sieht doch ganz gut aus:
curl.haxx.se/libcurl/pascal/


Das sieht so aus, als sei das nicht curl selber sondern ein Wrapper. Ich kenne curl nur als Kommandozeilen-Tool.
Thom
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 70
Erhaltene Danke: 5


Delphi 10 Seattle Prof.
BeitragVerfasst: Mo 28.03.11 22:16 
user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
Guten Tag,
bin noch relativer Anfänger in Delphi und möchte nun etwas mit Curl in Delphi machen, da die Indy HTTP Componente nicht so funktioniert wie ich es mir vorstelle und daher dazu gezwungen bin curl zu benutzen.

Ich habe die Diskussion schon in der Delphi-Praxis mitverfolgt.
Ich denke, es ist kein finanzielle Frage, daß die anderen so reagieren, sondern eine Frage des Tons. Winkt jemand mit x Euro und reagiert auf Nachfragen abweisend, so kommt logischerweise eine unfreundliche Antwort. Schaukelt sich das Ganze auch noch hoch, endet es - ja eben wie in der Dephi-Praxis.

Aber immerhin hast Du hier schon einmal etwas näher begründet, weshalb Du Indy nicht verwenden möchtst. Dabei wäre es so einfach gewesen:

Frage:
Die Indy-Funktion IdHTTP1.Get(MeineSeite,Stream) liefert nur eine Exception. Was kann ich tun?

Antwort:
Liefert die Seite nicht die HTTP-Antwort 200, reagiert Indy mit einer Exception. Das ist bei diesen Komponenten so gewollt und damit normal.

Frage:
Wie kann ich dann aber den Quelltext von Weiterleitungsseiten ermitten?

Antwort:
Unterbinde die Erzeugung von Exceptions. Nutze folgenden Code:
ausblenden Delphi-Quelltext
1:
IdHTTP1.Get(MeineSeite,Stream,[302,500]);					


Antwort:
Vielen Dank, werde ich gleich einmal ausprobieren.

Da wäre kein Schwenken eines oder mehrerer Scheine nötig gewesen, denn das hinterläßt erstens den Eindruck einen gewissen Überheblichkeit und Arroganz und zweitens würde sich wirklich kein Profi für diesen Betrag hinsetzen und Dir ein Beispiel programmieren für eine kaum genutzte Unit, wenn alternative - und bessere - Lösungen zur Verfügung stehen.

Auf eine höflich gestellte und ordentlich begründete Frage hingegen erhälst Du meistens eine hilfreiche Antwort.

user profile iconph0g hat folgendes geschrieben Zum zitierten Posting springen:
Ist das verboten? Was spricht dagegen 2 Quellen für eine Lösung seines Problems zu beanspruchen?

Auch das ist eine Frage des Tons: Du beanspruchst. :roll:
Synonymwörterbuch:
bestehen auf, fordern, abverlangen, besetzen, für sich haben wollen, Anspruch erheben auf, sein Recht behaupten... Höflich? :gruebel: