AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Undefinierter Bezeichner: ESocketError
Thema durchsuchen
Ansicht
Themen-Optionen

Undefinierter Bezeichner: ESocketError

Ein Thema von Pseudemys Nelsoni · begonnen am 21. Okt 2003 · letzter Beitrag vom 22. Okt 2003
Antwort Antwort
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 17:06
hoi,

ich will eine exception auslösen...

Delphi-Quellcode:
case ESocketError of
  11004: ShowMessage('bla')
end;
wieso ist ESocketError undefiniert? was fehlt in den uses?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#2

Re: Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 17:28
k, "sockets" fehlte


Delphi-Quellcode:
            except
            if ESocketError = 11004 then
              ShowMessage('hi');
            end;

inkompatible typen?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#3

Re: Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 19:14
kann ich überhaupt bestimmen was der fehlercode is?

Delphi-Quellcode:
except
  ShowMessage('hi');
end;
das funktioniert einwandfrei, aber ich möchte eine andere message bei fehler #10049 ausgeben als bei #11004...wie krieg das denn raus
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#4

Re: Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 20:56
Du mußt immer eine konkrete Instanz der Exception angeben:
Delphi-Quellcode:
try
  ServCon.Connect;
except
  on E: ESocketError do ShowMessage(E.Message);
end
ESocketError hat (leider) keinen ErrorCode

Deshalb musst Du die Ereignisse / Callbacks der verwendeten Komponenten nutzen
(ScktComp.SetErrorProc, TCustomWinSocket.OnErrorEvent etc.)

Was für Komponenten nutz Du denn?

CU mr2
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5

Re: Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 20:59
hoi

wofür steht das "E:" ? ^^

ich benutze die Indy komp "idHTTP" wenn ich nicht mit dem internet verbunden will und versuchen möchte eine datei runter zu laden, kommt der "socket error #11004" << und genau auf die möchte ich reagieren
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 21:01
Zitat von silent:
hoi

wofür steht das "E:" ? ^^
E ist hier ein Platzhalter für die erhaltene Exception.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#7

Re: Undefinierter Bezeichner: ESocketError

  Alt 21. Okt 2003, 21:02
Hi,

mal Hand aufs Herz, schonmal mit der Onlinehilfe versucht:

soviel auf die Schnelle:

ESocketerror ist definitiv keine Integervariable, also können deine Abfragen auch nicht funktionieren.

ESocketError ist eine von Exception abgeleitete Klasse, von der im Falle eines Fehlers eine Instanz erzeugt wird, die kannst Du dann in except auswerten, und auch die originle Meldung durch eine eigene ersetzen.

Schau mal in der Onlinehilfe unter try except, raise, und on .. nach.

Da findet sich alles weitere

Grüsse
Woki
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#8

Re: Undefinierter Bezeichner: ESocketError

  Alt 22. Okt 2003, 21:11
dann musst Du statt
  on E: ESocketError do ShowMessage(E.Message); einfach
Delphi-Quellcode:
  on E: EIdSocketError do begin
    if (E.ErrorCode = 11004)
    then ShowMessage(E.Message)
    else raise;
  end;
schreiben

mr2
  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 16:29 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