• Ich habe ein kleines Programm geschrieben welches mir immer diese Meldung ausspuckt

    Zitat

    Das Programm "K:\...Üben\Debug\Üben.exe" wurde mit Code 0 (0x0) beendet.

    Davor bekam ich das noch

    Zitat

    "C:\WINDOWS\system32\kernel32.dll" wurde geladen. Es wurden keine entsprechenden Symbolinformationen gefunden.
    Thread 0x650 wurde mit Code 0 (0x0) beendet.

    Bin mir sicher hier gibt es jemanden der mir helfen kann..

    Danke im Voraus

  • Du verwendest Visual C oder? Du hast dein Programm mit F5 gestartet oder? Mit F5 kann man das Programm im debugging Modus starten, die kernel32.dll enthält aber keine Symbolinformation, d.h. in der dll sind nicht die Funktionsnamen enthalten, dass ist aber so ganz in Ordnung. Das Code 0 bedeutet (im normal Fall) das dein Programm ohne Fehler beendet wurde. Wenn du in deiner Funktion main() am Ende nicht return 0 (hoffe doch du hast das nicht vergessen) sondern return 1 schreibst, dann sollte entsprechen den Code 1 zurückliefern, damit kann man z.B. in Batchscripts abfragen, ob das Programm erfolgreich ausgefürt wurde und wen Fehler aufgetreten sind, den entsprechenden Fehler herausfinden.

    Normal starten kannst du dein Programm im Visual Studio mit Strg+F5.

  • return 0, ist schon richtig, wollte nur zeigen wie dieser Code zu stande kommt. Normal nimmt man 0 für Fehlerfrei ausgeführt, 1 nimmt man dann z.B. wenn eine Datei nicht geöffnet werden konnte, 2 wenn die Datei fehlerhafte Daten enthält, 3 ....

    Aber wo steht bei dir in VB return 0? Ich dachte immer in Basic beendet man ein Programm mit End (war in Basic V2 jedenfalls so ;-))?

  • Und ich dachte schon, das Programm meldet einen Fehler, wenn es für sich alleine (im Explorer als EXE gestartet) läuft. Aber anscheinend handelt es sich um die Information, die der Debugger anzeigt, wenn man es aus der IDE testet. Was doch so für Missverständnisse entstehen, wenn man nicht genug Details schreibt...

  • bergi

    ich dachte immer für Fehler-Rückgaben nimmt man negative Werte...

    also 0 für kein Fehler
    -1 für allgemeinen Fehler,
    -2 für blabla...


    etc.

    Mal googeln ob's da eine Art "Standard" gibt.

    Gruß, fileman.

  • In Batch-Dateien kann man aber nur positive ERRORLEVEL abfragen. Was du die Funktionen innerhalb deiner Programme zurückgeben lässt, ist deine Sache - aber Rückgabewerte an das Betriebssystem beim Beenden von Programmen sollten zwischen 0 und 255 liegen.

  • Ah ja... an die guten alten ERRORLEVELs beim Batch habe ich gar nicht gedacht ;) - hab's halt schon oft gesehen, dass -1 oder -2 zurück gegeben wird.

    Gruß, fileman.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!