AGB  ·  Datenschutz  ·  Impressum  







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

Interface in einer Klasse

Ein Thema von Luckie · begonnen am 15. Feb 2006 · letzter Beitrag vom 15. Feb 2006
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Re: Interface in einer Klasse

  Alt 15. Feb 2006, 11:34
Kommando zurück, das habe ich schon so gehabt.

OK, konkret sieht es so aus: Ich habe die Typbibliothek JabberCOM_TLB.pas (siehe Anhang, Link zur Interface Dokumentation: http://jabbercom.sourceforge.net/jsession.php3). Dann habe ich da die Klasse:
Delphi-Quellcode:
type
  TOnConnect = procedure(Sender: TObject) of object;
  TOnAuthError = procedure(Sender: TObject) of object;

  TDWJabberSession = class(TObject)
  private
    FJabberSession: TJabberSession;
    FServer: WideString;
    FUser: WideString;
    FPW: WideString;
    FResource: WideString;
    FPort: Integer;
    FConnected: Boolean;
    procedure SetServer(AServer: WideString);
    procedure SetUser(AUser: WideString);
    procedure SetPassword(APW: WideString);
    procedure SetResource(AResource: WideString);
    procedure SetPort(APort: Integer);
    function GetConnected: Boolean;
  public
    constructor Create(AServer: WideString; AUser: WideString; APassword: WideString;
      AResource: WideString; APort: Integer); overload;
    constructor Create; overload;
    destructor Destroy; override;
    property Server: WideString write SetServer;
    property User: WideString write SetUser;
    property Password: WideString write SetPassword;
    property Resource: WideString write SetResource;
    property Port: Integer write SetPort;
    procedure Connect;
    property IsConnected: Boolean read GetConnected;
  end;
Die Connect Methode sieht so aus:
Delphi-Quellcode:
procedure TDWJabberSession.Connect;
begin
  ShowMessage(FUser); // ist nicht leer und stimmt
  FJabberSession.DoConnect(False, jatPlainText);
end;
Das Problem ist, dass ich einen Authentifizierungsfehler bekomme. Ich vermute mal, dass die erforderlichen Parameter an das Interface nicht weitergegeben werden, obwohl in der ShowMessage die Variable richtig ausgegeben wird. Komisch ist allerdings, dass wenn ich den Mauszeiger ober FJabberSession halte nur die Ereignisse von TJabberSession erscheinen, nicht aber die Felder.

Ohne die Typbibliothek in eine Klasse zu kapseln geht es ohne weiteres. Aber das ist mir zu unübersichtlich irgendwie.
Angehängte Dateien
Dateityp: pas jabbercom_tlb_199.pas (258,5 KB, 5x aufgerufen)
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


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 14:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz