WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Fehlerabfangem mit try'/catch

 

Phipo
Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 04.11.09
Wohnort: Stuttgart
Version: ---
     Beitrag Verfasst am: 22.11.2009, 15:58     Titel: Fehlerabfangem mit try'/catch
  Antworten mit Zitat      
Servus miteinander,

ich möchte meine Gui so absichern, dass bei Errors abgefangen werden und dem Benutzer ausgegeben werden.
In meiner Gui kann der Benutzer ein Script auswählen und diesen per button starten. Der Aufruf funktioniert tadelos. Ein Fehlerauftritt wollt ich folgendermaßen abfangen:


Code:

curdir = (pwd);
try
    cd(Pathname);
    string = Filename(1:end-2);
    feval (string);
    cd(curdir);
catch
    cd(curdir);
    errordlg(lasterror,'Fehler');
end;
 


Bei einem Fehler werden ja die catch Anweisungen ausgeführt aber ich bekomme folgende Fehlermeldung:
??? Reference to a cleared variable curdir.
Wenn ich debuge scheint curdir leer zu sein. Warum?


Hoffe Ihr könnnt mir helfen!
Dank Euch schonmal

Gruß Philipp
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.11.2009, 17:41     Titel:
  Antworten mit Zitat      
Hallo,

ich habe versucht, das zu reproduzieren, und bekomme keine Fehlermeldung. Versuch mal den Code hier (unabhängig von der GUI) :

Code:
curdir = (pwd);
try
    cd(matlabroot);
    rnd
    cd(curdir);
catch
    cd(curdir);
    errordlg('Fehler');
end;


Wenn er nicht läuft: welche MATLAB-Version hast du?

Wenn er läuft: ich würde davon ausgehen, dass dein Problem nicht unmittelbar in diesem Codeausschnitt liegt. Ist das ein zusammenhängender Codeausschnitt (d.h. keine weiteren Zeilen dazwischen) ?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Phipo
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 04.11.09
Wohnort: Stuttgart
Version: ---
     Beitrag Verfasst am: 23.11.2009, 12:18     Titel:
  Antworten mit Zitat      
Hallo Harald,

ja es gibt Code Zeilen davor:

Code:

% Auswahl des Analysescripts im Defaultordner
[Filename,Pathname] = uigetfile('*.m','Importscript auswählen',...
    'f:\Eigene Dateien\sa_ivk\Matlabfiles\Programm\Import_Scripte\');
 


Der Fehler muss wohl in dem Script, den ich über die obere Zeilen einlese, sein. Da dieser mit Deinem Code oder einem anderen Dummy Script nicht auftritt.
Schade ist, dass ich genau solche Fehler eigentlich versuche abzufangen.

Ich habe by the way die Matlab Version 7.3.0.267 (R2006b)

Danke für Deine Mühen.
Gruß Philipp
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 23.11.2009, 20:22     Titel:
  Antworten mit Zitat      
Hallo,

ich habe jetzt ein wenig experimentiert und kann dein Problem nicht recht nachstellen. Eine Idee habe ich jedoch:
In dem Skript, das du ausführst, kommt nicht etwa am Anfang ein
Code:

oder ähnliches?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Phipo
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 04.11.09
Wohnort: Stuttgart
Version: ---
     Beitrag Verfasst am: 24.11.2009, 14:34     Titel:
  Antworten mit Zitat      
Hallo Harald,

oh mann klar, in dem Script kommt ein Clear drin vor! Da hätte man auch drauf kommen können ;-/

Mein Dank an Dich Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.