Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 10.05.2001 - 13:56 Titel: Öffnen Dialog - Fehlerbehandlung |
|
|
Hallo zusammen
Ich arbeite an einem Script, bei dem Dateien und Ordner per "choose folder/file" gewählt werden. Wenn ich das teste, während ich im Skripteditor daran arbeite gibt's kein Problem. Nachdem ich das Sciprt aber unter "nur ausführbar sichern" speicher, wird überhaupt kein Dialog geöffnet. Der Part im Script:
try
set y to (choose file) as alias
set yy to name of (info for y)
set theList to theList & y
set namen to namen & yy
set onoff to onoff & " "
machliste()
dd set value of item 9 of fenster to " Hinzugefügt: Datei '" & yy & "'"
on error aa
if aa is "User canceled." then
dd set value of item 9 of fenster to " Dialog abgebrochen"
else
dd set value of item 9 of fenster to " Fehler: " & aa
end if
end try
Der Befehl "dd set value" benötigt die Script-Erweiterung "Dialog Director". Mit Hilfe dieser Erweiterung lasse ich mir in einem Textfeld (item 9 of fenster) die Fehler anzeigen. Klicke ich nun auf den "Wählen"-Button, geht kein Dialog auf. Es erscheint sofort "User canceled." im Textfeld, was beim Testlauf im Editor nur dann erscheint, wenn ich im Öffnen-Dialog "Abbrechen" klicke (so sollte es sein). Kann mir jemand weiterhelfen?
Danke und Grüße, Jens |
|
Nach oben |
|
 |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 10.05.2001 - 14:12 Titel: Öffnen Dialog - Fehlerbehandlung |
|
|
Nachtrag:
Es erscheint in dem Textfeld natürlich nicht "User canceled.", sondern "Dialog abgebrochen.".
Jens |
|
Nach oben |
|
 |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 10.05.2001 - 15:30 Titel: Öffnen Dialog - Fehlerbehandlung |
|
|
Problem gelöst! Es lag an der Speicherzuteilung. 200K sind offensichtlich zu wenig, um ein Dialogfenster zu öffnen.
Das bringt mich aber gleich zu einer neuen Frage: wie sieht es denn eigentlich mit der Speicherzuteilung von Script-Programmen aus? Gibt es da irgendwelche Reglen/Besonderheiten?
Grüße, Jens |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 10.05.2001 - 15:41 Titel: Öffnen Dialog - Fehlerbehandlung |
|
|
Hallo Jens,
so ganz nachtesten kann ich das nicht - dazu fehlt mir der ganze Code - aber i.d. Entwicklung ruhig mit profanen Dingen arbeiten, z.B.
try
--Code
on error errmsg number num
display dialog errmsg & " " & num as string
-- weiterer Code
end try
Da kann man oft erkennen woran es hakt. In Deinen wenigen Scriptzeilen habe ich gefunden:
set y to (choose file) as alias
--class of result ist normalerweise alias, 'as alias' wird hier nicht benötigt (im Gegensatz zum 'as string'!). Dies wird aber i.d.R. nicht zu einem Fehler führen.
set theList to theList & y
-- hier werde ich angemeckert das die Variable theList nicht definiert wurde. Wenn das der Fehler sein sollte, so hilft am Anfang des Handlers ein
set theList to {}
und schon ist die Variable theList bekannt.
Gruß
Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 10.05.2001 - 15:57 Titel: Öffnen Dialog - Fehlerbehandlung |
|
|
Uups da warst Du schneller - fein, 1. Problem gelöst. Was die Speicherzuteilung angeht muß ich zugeben - ich weiß es nicht. Sicher kann man das aufs Byte genau berechnen. Ich mache das i.d.R. ganz nach Gefühl. Je nach Umfang der Application (Scripttextmenge, eingebundene Scriptobjekte und Libraries, via ResEdit eingebundene eigene Icons) geb ich ein paar Hundert KB zusätzlich. Übrigens - Speichermangel sollte doch auch eine Fehlermeldung mit Nummer ausgebenÖ
ID=25 Memory Full Error
You've probably run out of RAM. But you can get this error when an earlier error causes the Macintosh to falsely detect an out-of-memory condition.
Ob's funktioniert habe ich jetzt nicht geprüft, aber ich meine mich zu erinnern diese Fehlernummer in Folge von zu geringer Speicherzuteilung schon gesehen zu haben. Egal, was soll's mit Mac OS X gehört Speicherzuteilung eh' der Vergangenheit an ;-)
Gruß, Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 10.05.2001 - 17:13 Titel: Öffnen Dialog - Fehlerbehandlung |
|
|
Hallo Folker
Danke für Deine Hinweise. Tatsächlich passiert bei zu wenig zugeteiltem Speicher oben beschriebenes Problem. Zufällig habe ich festgestellt, dass bei mehrmaligem aufrufen des Dioalogs dann ein Fehler "An error of -1280" has occured" (oder so ähnlich) erschien. Leider weiss ich jetzt die Nummer nicht mehr genau, auf jeden Fall stand in meiner Fehlerliste unter diesem Error irgendwas von memory und da hat's bei mir geklingelt.
Ich fände es sehr interessant, ob man mit AS den verwendeten Speicher prüfen und so eine Fehlerbehandlung einbauen kann. Werde ich mal nachschauen, oder weisst da jemand schon was?
Ach ja noch was: wer weiss, wo man Infos über Perfomance-Verbesserung von AS durch besseren Code erfahren kann?
Viele Grüße, Jens |
|
Nach oben |
|
 |
|