ShowMessage



  • Hi!

    Ich habe eine Client/Server-Anwendung. In dieser prüft der Server ob sein Logfile vorhanden ist, wenn nicht sendet er eine Message. Wenn ich allerdings einfach ShowMessage aufrufe stürzt die Anwendung ab.
    Ist es richtig das es daran liegt das ich nicht einfach einen ShowMessage aufruf machen kann, da er nicht weiß wohin er zurückkehren soll oder so? Wie kann ich dem Client eine Nachricht schicken, in Form einer Nachrichtenbox?

    Code-Hacker



  • Vielleicht beschreibst du dein Problem mal genauer und zeigst Code wo was abstürzt.



  • Hallo,
    welches BS verwendest du? Welchen Compiler und welche Bibliothek für die Verteilung?

    Wenn du die drei Fragen beantwortest hast, wäre es gut wenn du deine Problembeschreibung noch mal überarbeiten würdest. Am Besten wäre ein Minimalbeispiel, dass dein Problem verdeutlicht.



  • Hi!

    Ich schriebe das Programm in C++-Kylix3 für Linux (KDE).
    Hier mein Problem:

    void schreibeDatei(AnsiString ausgabe)
    {
      const char file[] = "/home/test/Loggfile.txt\0";
    
      ifstream test;
      test.open(file, ios_base::in);
    
      if (test.good() == true)
      {
        ofstream datei(file, ios_base::out | ios_base::app);
        datei << ausgabe.c_str() << endl;
        datei.close();
      }
      else
      {
        //ShowMessage("Test");
      }
    }
    

    Ich denke ihr seht was es macht, trotzdem hier die Erklärung:
    Es wird eine Datei auf Vorhandenheit im angegebenen Verzeichnis gesucht, wenn der Test erfolgreich war, wird in diese Datei geschrieben, wenn nicht soll eine kleine Message erscheinen das es nicht geklappt hat, also der Else-Zweig wird ausgeführt.Das Problem verursacht die Zeile die ich da als Kommentar reingepackt habe. Die Nachricht erscheint auch, sowie ich aber auf OK klicke stürzt die Anwendung ab.
    Natürlich ist Logfile falsch geschrieben, weil ich den else-Zweig ja testen muss. Es kann imo nur daran liegen das es eine Server/Client-Anwendung ist, weil bei einer Test-Anwendung von mir wo genau diese Methode verwendet wird samt ShowMessage läuft alles einwandfrei. Noch angemerkt, der Server wird initialisiert wenn das Programm gestartet wird.
    Ich werde den heute aber noch auseinander nehmen, so dass es 2 Programme sind. Achja, es handelt sich beim Rest des Programmes um das Beispiel "netchat" was bei kylix dabei war. Da habe ich in die Methode vom Empfangen einfach die erste Zeile (die der User unbewusst übergibt) abgefangen und schreibe das in die Datei, danach erscheint der Rest auf dem Bildschirm.

    Ich hoffe ihr könnt damit jetzt etwas Anfangen. Wir haben uns zwar jetzt auf eine Zwischenlösung geeinigt, aber an das Problem werde ich wohl nochmal müssen.

    Code-Hacker

    PS: Wusste den Befehl für C/C++-Code nicht und Konqueror hat das nicht eingefügt........



  • lass dich von einem c++mod nach borland builder verschieben, das kommt näher ran.

    das problem ist vielleicht, dass du eine lib nicht mitgelinkt hast bzw. erst mal includieren musst.



  • Aber dann würde er doch sagen das er das nicht kennt und mir auch keine mögliche Parameterliste anzeigen. In der Referenz die dabei ist steht auch nichts von einer zusätzlichen Header oder was auch immer, zumal es ja in einem anderen Prog funzt. Aber kannst du trotzdem verschieben, oder ein anderer Mod.

    Code-Hacker


Anmelden zum Antworten