Scipt zum Wechsel des Arbeitsverzeichnisses

Hallo !
kann mir jemand helfen?
Da ich mal dies und mal das Arbeitsverzeichnis einstellen muss, möchte ich für den Wechsel des Arbeitsverzeichnisses jeweils in einen Script haben und den jeweiligen Script als Button in der Symbolleiste ablegen.

Nur, was muss in dem Script stehen?. Ich hab schon versucht einen bestehende Script zu ändern, bin aber leider gescheitert.

Der Script soll nur das Arbeitsverzeichnis "d:\sowieso" einstellen, keine weiteren Abfragen oder MsbBox enthalten. Also Buttonklick und fertig.

theWorkDir = "D:\sowieso".AsFileName 'PFAD ANPASSEN

if (File.Exists(theWorkDir) AND (File.IsWritable(theWorkDir))) then
av.GetProject.SetWorkDir(theWorkDir)
end
Danke Maxilla,

leider funktioniert es nicht !?

Ich hatte schon den Script vom Memo Tools kopiert und so verändert das dort "D:\sowieso" als "Vorgabe" eingeben ist und den Script dann als Button verknüpft. Auch das funktionierte nicht. ( Script läuft aber fehlerlos)
Wenn ich dann MemoTool "Arbeitsverz. festlegen" aus dem Menü aufrufe ist dort "D:\sowieso" schon vorgeben. Ein OK stellt den Pfad dann richtig ein.
Ich verstehe gerade nicht ganz, WAS da nicht funktioniert?
Das Arbeitsverzeichnis wird nicht auf das angegeben Verzeichnis eingestellt.
(Es ist vorhanden und Zugriffsberechtigung auch - mit dem Script wollte ich es lediglich bequemer haben).

Muss man vielleicht noch irgend etwas anderes machen als beim neuen Button einrichten bei "CLICK" mit dem Script-Manager den Script auswählen und OK klicken?
(Also den Script vor kompilieren ab ich getan, mehr aber auch nicht)
Lass das Skript probehalber mal mit folgenden Messageboxen durchlaufen
und schau, was sie anzeigen:

theOldWorkDir = av.GetProject.GetWorkDir.AsString
theWorkDir = "D:\sowieso".AsFileName

if (File.Exists(theWorkDir) AND (File.IsWritable(theWorkDir))) then
av.GetProject.SetWorkDir(theWorkDir)
end

MsgBox.Info("Alt: "++theOldWorkDir+nl+
"Neu: "++av.GetProject.GetWorkDir.AsString," Arbeitsverzeichnis:")
MsgBox.Info(File.Exists(theWorkDir).AsString.UCase ,
theWorkDir.AsString++"existiert:")
MsgBox.Info(File.IsWritable(theWorkDir).AsString.U Case,
theWorkDir.AsString++"ist beschreibbar:")
MessageBox

Alt c:\austausch (den hatte ich vorher eingestellt)
Neu X:\punktnummernplot ( der soll es dann auch sein)

nach OK drücken

MessageBox "X:\punknummerplot existiert"

TRUE

nach OK drücken

MessageBox "X:\punktnummernplot ist beschreibbar

TRUE

nach OK zurück zum VIEW

Aber, wenn ich dann ein(e) Thema/Legende oder laden möchte ist immer noch c:\austausch eingestellt.
Ach so. Das dürfte daran liegen, dass beim Themen laden das CWD (CURRENT work directory) und nicht das Work Directory angesprochen wird. Das CWD ist das letzte, z.B. durch 'Thema hinzufügen' aufgesuchte Verzeichnis.

Versuch's mal damit:


theWorkDir = "X:\punktnummernplot".AsFileName

if (File.Exists(theWorkDir) AND (File.IsWritable(theWorkDir))) then
av.GetProject.SetWorkDir(theWorkDir)
theWorkDir.SetCWD
end
JAa !! SUPER!!

Vielen Dank
und entschuldige bitte, dass ich mich Anfangs nicht klargenug ausgedrückt habe.

Hans-Jürgen