|
|
Variablen speichern/behalten in .exe Ausführung |
|
manphiz |
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.05.2017, 11:15
Titel: Variablen speichern/behalten in .exe Ausführung
|
|
Guten Tag zusammen,
habe ein kleines Programm mit GUI erstellet, was Grafiken darstellen kann.
Mit dem deploytool habe ich eine .exe Datei erzeugt.
Nun meine Frage: ist es möglich, dass die Variablen und Werte, die bei Benutzung mit der .exe entstehen, gespeichert werden.
Also, wenn ich die exe schließe und wieder öffne, dass mein Fortschritt genau gleich bleibt.
Das wäre super, wenn das jemand weiß,
Tausend Dank.
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 24.05.2017, 11:28
Titel:
|
|
Hallo,
ich würde das zunächst mal innerhalb von MATLAB versuchen, und zwar so:
- eine CloseRequestFcn erstellen
https://www.mathworks.com/help/matl.....s.html#property_d0e276069
- in dieser alle eingegebenen Daten auslesen und in eine Datei (z.B. .mat) schreiben
- in der OpeningFcn nach der Datei mit den Einstellungen suchen und diese wieder in die einzelnen Elemente schreiben.
Grüße,
Harald
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.05.2017, 15:57
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
ich würde das zunächst mal innerhalb von MATLAB versuchen, und zwar so:
- eine CloseRequestFcn erstellen
https://www.mathworks.com/help/matl.....s.html#property_d0e276069
- in dieser alle eingegebenen Daten auslesen und in eine Datei (z.B. .mat) schreiben
- in der OpeningFcn nach der Datei mit den Einstellungen suchen und diese wieder in die einzelnen Elemente schreiben.
Grüße,
Harald |
Vielen Dank, Harald.
Das werde ich mal versuchen
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.05.2017, 12:38
Titel:
|
|
Hallo zusammen,
habe nun eine Lösung gefunden.
Leider ist das über die OpeningFcn nicht möglich, da ich ein Tool für Tabs benutze und das macht dann Probleme.
Habe es nun mit 2 Buttons (speichern und laden) gelöst, hier der Code für die, die ähnliches benötigen.
Button speichern:
Button laden
Viele Grüße
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.05.2017, 16:23
Titel:
|
|
Sorry für Mehrfachposting.
Leider gibt es ein weiteres Problem.
Beim Einlesen/Speichern von Variablen aus edit-Felder gibt es keine Probleme, das geht mir folgendem Code
Will ich aber eine Varaible aus meinem Workspace holen speichert Matlab diese nicht.
Dazu habe ich folgenden Code versucht:
Matlab erzeugt keine Fehlermeldung, er speichert die Variable nur nicht.
Kann jemand helfen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 29.05.2017, 16:33
Titel:
|
|
Hallo,
die Handles-Struktur muss immer explizit aktualisiert werden, wenn sie in einer anderen Funktion so verfügbar sein soll, typischerweise so:
Grüße,
Harald
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.05.2017, 08:10
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
die Handles-Struktur muss immer explizit aktualisiert werden, wenn sie in einer anderen Funktion so verfügbar sein soll, typischerweise so:
Grüße,
Harald |
Das hatte ich bereits im Code eingebaut, siehe viertes Posting des Themas. An was kann es sonst liegen?
edit: ist es denn zwigend notwenig alle handles einzeln zu speichern?
kann ich nicht alle handles, die aktuell in Benutzung sind speichern?
Denn wenn ich während des codes mit
abfrage, werde mir ja auch alle handles aufgezeigt.
edit2: das Speichern hat geklappt, denn die Variablen sind im erzeugten m.file, das Problem ist also beim reinladen.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 30.05.2017, 19:58
Titel:
|
|
Hallo,
hast du denn beim Reinladen auch den guidata-Befehl drin?
Grüße,
Harald
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.06.2017, 08:32
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
hast du denn beim Reinladen auch den guidata-Befehl drin?
Grüße,
Harald |
Stimmt, danke. So geht es.
Jetzt ist nur ein weiteres Problem aufgetaucht, bei der Ausführung des Speicherns und Ladens in Matlab als .m file gibt es keine Probleme.
Erstelle ich aber eine .exe und versuche es dort, funktioniert es nicht.
Es können keine handles gespeichert werden und beim Reinladen lädt er die handles, welche ich zuletzt als .m file gespeichert hatte.
Woran könnte das liegen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 01.06.2017, 19:04
Titel:
|
|
Hallo,
eines der häufigsten Probleme sind Pfadprobleme.
Zudem sollte man die .exe aus einer Konsole heraus starten, damit man eventuelle Fehlermeldungen sieht.
Grüße,
Harald
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 06.06.2017, 10:45
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
eines der häufigsten Probleme sind Pfadprobleme.
Zudem sollte man die .exe aus einer Konsole heraus starten, damit man eventuelle Fehlermeldungen sieht.
Grüße,
Harald |
Danke für den Vorschlag mit der Konsole.
Leider werden keine Fehler angezeigt.
Ein Pfadproblem schließe ich ebenfalls aus, da das .mat File (in dem die Speicherdaten stehen) erzeugt wird und dieses kann man auch Reinladen.
Es stehen nur die falschen Daten im .mat File.
Er speichert, wie gesagt, die Variablen aus dem letzten "Test" als m.file, bevor die .exe erzeugt wurde.
Ich bin ratlos..
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 06.06.2017, 10:49
Titel:
|
|
Hallo,
da bräuchte ich dann wirklich ein reproduzierbares Beispiel.
Ich würde aber für Versuchszwecke nochmal sicherstellen, dass beim Laden und Speichern der .mat-Datei der vollständige Pfad (C:\...\file.mat) angegeben ist.
Grüße,
Harald
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 06.06.2017, 11:07
Titel:
|
|
Im Anhang habe ich ein kurzes Beispiel erstellt.
Hoffe dies erleichtert es etwas.
Beschreibung: |
|
Download |
Dateiname: |
SpeichernLaden.m |
Dateigröße: |
6.3 KB |
Heruntergeladen: |
209 mal |
Beschreibung: |
|
Download |
Dateiname: |
SpeichernLaden.fig |
Dateigröße: |
2.57 KB |
Heruntergeladen: |
185 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 06.06.2017, 11:40
Titel:
|
|
Hallo,
ich habe mal beim Speichern folgendes eingefügt:
Siehe da, er speichert in irgendein temporäres Verzeichnis.
Dass dann nicht zumindest dieselbe Datei geladen wird, wundert mich, aber ich kann eben nur empfehlen, beim Schreiben und Lesen jeweils den vollen Pfad anzugeben. Ggf. den Nutzer über uigetfile / uiputfile die Datei auswählen lassen.
Grüße,
Harald
|
|
|
manphiz |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 24.03.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 06.06.2017, 12:39
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
ich habe mal beim Speichern folgendes eingefügt:
Siehe da, er speichert in irgendein temporäres Verzeichnis.
Dass dann nicht zumindest dieselbe Datei geladen wird, wundert mich, aber ich kann eben nur empfehlen, beim Schreiben und Lesen jeweils den vollen Pfad anzugeben. Ggf. den Nutzer über uigetfile / uiputfile die Datei auswählen lassen.
Grüße,
Harald |
Danke fürs Ausprobieren.
Dann benutze ich beim Speichern:
und beim Einlesen:
nur wie kann ich hier die save und load Befehle einbauen?
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
Einstellungen und Berechtigungen
|
|
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
| RSS
Hosted by:
Copyright © 2007 - 2024
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.
|
|