AGB  ·  Datenschutz  ·  Impressum  







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

MSN -> TWEENER

Ein Thema von Tommy · begonnen am 14. Jun 2006 · letzter Beitrag vom 15. Jun 2006
 
Tommy

Registriert seit: 14. Jun 2006
Ort: chemnitz
20 Beiträge
 
#1

MSN -> TWEENER

  Alt 14. Jun 2006, 19:38
zu erst das:
Ich nutze C++ (bcb 5), deshalb kann es sein, dass ich ein paar Synthaxfehler drinne habe, weil ich es nur jz kurz auf Delphi umändere - weil es ja ca. 0 C++ Foren gibt, wo man auch ma innerhalb von nen paar Jahren ne Antwort erhält...

ZUM eigtl Thema:
zwar ist das nicht der erste Schritt der Anmeldung @msn, aber der einzig interessante für mich, weil der Rest geht:

"Once you have done this you should open a connection with nexus.passport.com, on port 443. [...] After the connection has been established you should send a simple GET request to the server."
--> "GET /rdr/pprdr.asp HTTP/1.0\r\n\r\n"

so - jz gibt es ja verschiedene Möglichkeiten, das anzustellen:

1. (mit Indy Komponente "TCPClient", verlinkt unter Intercept mit "IdConnectionInterceptOpenSSL1")
Delphi-Quellcode:
   IdTCPClient1.Host := 'nexus.passport.com';
   IdTCPClient1.Port := 443;
   IdTCPClient1.Connect();
der Code des OnConnect-Events
 IdTCPClient1.Write('GET /rdr/pprdr.asp HTTP/1.0\r\n\r\n'); der Code des OnWork-Events
AWorkMode: wmRead oder wmWrite - erklären brauch ich das nicht ^^
AWorkCount: int, entspricht der Menge der Empfangenen Bytes
Delphi-Quellcode:
 if(AWorkMode = wmRead)
  {
  char *receive = new char[AWorkCount];
  IdTCPClient1->ReadBuffer(receive,AWorkCount);
  }
hier hab ich das Problem, dass es nicht mal in das OnWork-Event springt - warum weiß ich nicht... :/
<hr>
2.1 (mit Indy Komponente "HTTP")
hier die einfachere Methode
Delphi-Quellcode:
   IDHTTP1.Host := 'nexus.passport.com';
   IDHTTP1.Port := 443;
   IDHTTP1.Get('https://nexus.passport.com/rdr/pprdr.asp');
OnWork:
Delphi-Quellcode:
   if(AWorkMode = wmRead)
    {
    char *receive = new char[AWorkCount];
    IDHTTP1->ReadBuffer(receive,AWorkCount);
{sry für C++ - Synthax - er erstellt nen Buffer und lässt den halt füllen...}

    }
jetzt springt er einmal in das Event, aber hat dort sensationelle NULL (->nil ^^) Bytes zu lesen... :/

2.2
Delphi-Quellcode:
   {Host = '...'; Port = 443;}
   String A := IDHTTP1.Get('https://nexus.passport.com/rdr/pprdr.asp');
-> A ist leer

2.3
Delphi-Quellcode:
   {Host = '...'; Port = 443;}
   IDHTTP1.Head('https://nexus.passport.com/rdr/pprdr.asp');
   String A := IDHTTP1.ResponseText;
-> A == "200 OK"

Meine erste Frage: benutze ich überhaupt die richtigen Komponenten? Und wenn ja, was mach ich falsch? Meiner Meinung nach müssten alle 3 Methoden gehen


Danke,

Tom

PS: Anbei die Anleitung zum MSNP8 Protokoll - zumindest grob ^^
Angehängte Dateien
Dateityp: doc logging_in_with_ssl_on_msnp8_183.doc (48,0 KB, 9x aufgerufen)
C++ != D

  Mit Zitat antworten Zitat
 


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 23:05 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