DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

/CScriptstart bei Diadem10.2 -->Fehlermeldung

Hallo,
ich möchte folgendes umsetzen. Bei Klick auf eine Desktopverknüpfung soll Diadem gestartet werden und gleichzeitig ein vbs Script mitgeladen werden. In dem Script wird dann unter anderem eine Variablendefinitionsdatei geladen. Das ganze befindet sich in einem eigenen Ordner, also nicht in den Standard Diadem Ordnern.  
Dazu bin ich so vorgegangen: Ich habe die "normale" Diadem Desktopverknüpfung kopiert und unter Eigenschaften im Feld Ziel " /CScriptstart (' " C\:xxxxx\xxxxxx\xxxx\Startscript" ') " angehängt. 
 
Wenn ich diese Verknüpfung jetzt wähle, kommt die Fehlermeldung " Variablendefinitionsdatei nicht auf Scriptpfad" .
Was kann ich da machen? Muss ich über /D einen Parameter mit dem Ordner übergeben???
 
Vielen Dank,Tobias 
0 Kudos
Message 1 of 9
(5,399 Views)
Hallo Tobias!
 
Ich vermute die Ursache in der nicht ganz richtigen Verwendung der Anführungsstriche. Wichtig ist das Windows in der Kommandozeile die " selber auswertet. DIAdem verwendet zum Glück noch die 'alte' Formelsyntax in der für Strings auch die ' verwendet werden dürfen. Ich würde deshalb empfehlen das Ziel in der Verknüpfung so zu definieren:
 
"D:\Programme\National Instruments\DIAdem 10.2\DIAdem.exe" /C"ScriptStart('C:\xxxxx\xxxxxxx\xxxx\StartScript.vbs')"
 
Matthias


Message Edited by Twigeater on 05-06-2008 09:24 AM
Matthias Alleweldt
Project Engineer / Projektingenieur
Twigeater?  
0 Kudos
Message 2 of 9
(5,396 Views)

Hallo Matthias,

erstmal Danke für die Antwort. Leider hat das aber den Fehler aber nicht behoben. Diadem startet, wie auch bei der anderen  Schreibweise, und dann kommt die Fehlermeldung "Variablendefinitionsdatei nicht in Scriptpfad".

Wenn ich das Script aber im Editor teste, über debug oder ausführen dann funktioniert das.

Gruß

0 Kudos
Message 3 of 9
(5,388 Views)
Hallo Tobias!
 
Wie sieht den dein Skript aus? Wird eine VAS-Datei referenziert? Es kann sein das das Windows Arbeitsverzeichnis anders ist.
 
Matthias
Matthias Alleweldt
Project Engineer / Projektingenieur
Twigeater?  
0 Kudos
Message 4 of 9
(5,386 Views)
Die Datei wird gleich am Anfang des Scriptes über
 
call uservarcompile("variablen")
 
eingebunden. Die Datei variablen.vas liegt in dem selben Ordner wie das Script Startscript.vbs das ich aufrufen möchte.
 
Wie gesagt im Diadem-Scripteditor funktioniert das auch. Nur über den Aufruf durch die Desktopverknüpfung nicht.
 
Windows Arbeitsverzeichnis??Ich habe halt auch die Vermutung, dass ich bei den Parametern in der Verknüpfung nicht nur das Script aufrufen muss, sondern auch gleichzeitig das Verzeichnis einstellen muss. In der Desktopverknüpfung rufe ich ja über /CScriptStart nur das Script auf....
Wie kann ich hier denn das Arbeitsverzeichnis mit angeben?
 
 


Message Edited by Saibot on 05-06-2008 05:53 AM
0 Kudos
Message 5 of 9
(5,380 Views)
Hallo Tobias!
 
Kann ich reproduzieren, die Ursache ist mir aber nicht ganz klar. Ich würde aber generell empfehlen den UserVarcompile-Aufruf so zu ändern:
 
Call UserVarCompile( AutoActPath & "VARIABLEN.VAS" )
 
Damit ist dann der Scriptpfad immer sicher der Suchpfad für die VAS-Datei und es klappt dann.
 
 
Matthias
Matthias Alleweldt
Project Engineer / Projektingenieur
Twigeater?  
0 Kudos
Message 6 of 9
(5,376 Views)

Hallo,

ja das funktioniert. Was mich nur wundert, ich hatte das schon mal so, dass es auch anders funktionierte. Ich kann es aber leider nicht mehr reproduzieren. Jetzt bin ich nämlich auf das nächste Problem gestossen.

Ich rufe an einer stelle im Script einen Dialog über

Returnvalue_=suddlgshow("Startdialog","StartDialog")

auf. Jetzt bekomme ich auch hier wieder die Meldung, dass er die Datei nicht findet. Ich habe schon verschiedene Möglichkeiten mit AutoActPath probiert....ohne Erfolg.

Ist es evt. Möglich eine desktop.ddd zu erstellen, in der man dann den Pfad "global" einstellen kann?

 

0 Kudos
Message 7 of 9
(5,372 Views)
Hallo Tobias!
 
Ohne DDD-Datei würde ganz am Anfang diese Zeile helfen:
 
AutoDrvUser = AutoActPath
 
Dann brauchst du den Pfad auch beim UserVarCompile nicht mehr angeben.
 
In der DDD-Datei kann alternativ dieser Pfad auch fest eingestellt werden.
 
Matthias
Matthias Alleweldt
Project Engineer / Projektingenieur
Twigeater?  
0 Kudos
Message 8 of 9
(5,366 Views)

Hallo Matthias.

Das ist die Lösung! Und wieder bin ich etwas tiefer in die Welten von Diadem eingedrungen.

Vielen Dank für die Hilfe.

Tobias

0 Kudos
Message 9 of 9
(5,363 Views)