Announcement

Collapse
No announcement yet.

Exception Handling Webanwendung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Exception Handling Webanwendung

    Hallo Forum,
    <br><br>
    ich habe im Builder 5 eine eigene Webserver Klasse entwickelt die über " cout " HTML ausgaben an einen Client sendet. (Es ist also eine Konsolenanwendung)
    <br><br>
    In diesem Programm will ich nun eine Textdatei einlesen, nur manchmal kommt es vor, das die Datei vielleicht nicht vorhanden ist bzw bereits darauf zu gegriffen wird (Ich löse das ganze über eine TStringList).
    <br><br>
    Das Problem ist nun, wenn ich das Programm Compiliert habe und auf dem Webserver ausführe und auf eine nicht vorhandene Datei zugreife, erscheint auf dem Webserver die Fehlermeldung in einem Windows-Fenster.
    <br>
    So nun habe ich einen Try-Catch zweig eingebaut, der wie folgt aussieht: <br>
    <pre>
    try {
    ChatFile->SaveToFile(filen.c_str());
    }
    catch(...) {
    //create logfile
    cout << "Da ging wohl was schief";
    }
    </pre>
    <br>
    Leider erscheint immernoch die Fehlermeldung als Fenster auf dem Server, anstatt als Text auf dem Client, weiß jemand abhilfe?
    <br><br>
    Viele Grüße
    <br><br>
    Manuel

  • #2
    Wieso schreibst du "SaveToFile"" wenn du einlesen willst??

    Ansonsten sollte dir

    extern PACKAGE bool __fastcall FileExists(const AnsiString FileName);

    weiterhelfe
    Christian

    Comment


    • #3
      Hallo,
      <br><br>
      danke, das bringt mich schon mal einen großen Schritt weiter (das ich nichts elbstd rauf gekommen bin, aber ich war zur Sehr in try/catch verbissen)! <br>Das oben war nur ein kurzer Auszug, ich speicher, die Datei später auch wieder und bekomme dann ein zweites Problem, nämlich wenn zwei Personen gleichzeitig speichern wollen! Und dann bekomm ich wieder ne Exception mit Fenster, weißt du (jemand) wie ich das umgehen kann?<br><br>
      Gruß

      Manue

      Comment


      • #4
        Nicht die C++Builder Methoden zur Speicherung benutzen, sondern die WIN 32 API Funktionen (CreateFile).Dort ist es möglich "shared" Zugriffe einzurichten.

        Ist aber dann nicht mehr so schön einfach
        Christian

        Comment

        Working...
        X