DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Programmstart mittels /CScriptStart - Informatiopn übergeben

Solved!
Go to solution

Hallo zusammen,

 

aktuell starte ich ein vbs-Script mittels CScriptStart über eine Verknüpfung. Im Zielpfad ist folgendes angegeben:

"C:\Program Files (x86)\National Instruments\DIAdem 2017\DIAdem.exe" /CScriptStart('"W:\...\Report_anzeigen.VBS"')

 

Das aufgerufene Script führt hauptsächlich folgende zwei Aufgaben aus:

Call DataFileLoad("S:\...\001\Auswertung\Auswertung_001.tdms")

Call Report.LoadLayout(CurrentScriptPath & "Vorlage_Diagramm.TDR")   

 

Die Verknüpfung zu dem Script liegt im selben Ordner wie die Datei "Auswertung_001.tdms", die eingeladen werden soll. Jedoch gibt es noch die Ordner 002\Auswertung und 003\Auswertung mit den zugehörigen tdms-Dateien "Auswertung_002.tdms" und "Auswertung_003.tdms". Hier entsteht ein Problem was ich nicht lösen kann:

 

Das Skript soll aus dem Ordner der tdms-Datei durch eine Verknüpfung o.ä. gestartet werden und genau die Datei einladen, welche im selben Ordner wie die Verknüpfung liegt. Diese Verknüpfung muss also auf irgendeine Weise ihren eigenen Pfad an das vbs-Script übergeben, sodass im Script folgendes stehen kann:

 

Call DataFileLoad(Pfad zur Verknüpfung & "Auswertung_XXX.tdms")

Call Report.LoadLayout(CurrentScriptPath & "Vorlage_Diagramm.TDR")   

 

Der Name der Datei (Auswertung_XXX.tdms) könnte dann Problemlos aus dem Pfad ermittelt werden, da ein Ordner im Pfad diesselbe Bezeichnung hat.

 

Ich hoffe ich konnte das Problem verständlich darstellen. Kann mir jemand helfen?

Viele Grüße

Jakob Griebenow

0 Kudos
Message 1 of 3
(2,603 Views)
Solution
Accepted by jakob.griebenow

If you use batch the following line will do the job

"C:\Program Files (x86)\National Instruments\DIAdem 2017\DIAdem.exe" /CT1:='%~dp0' /CMsgboxDisp(T1)

It uses T1 to transport the information.
Potentially you can also set this in a link.

Iy you use a different workingdirektory you can also use

CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")

in your script.

0 Kudos
Message 2 of 3
(2,594 Views)

Thanks for your solution, it works perfectly.

 

Here is another post which helped me write the batch-file:

https://forums.ni.com/t5/DIAdem/Run-Diadem-from-batch-file-with-parameters/td-p/3560417

0 Kudos
Message 3 of 3
(2,565 Views)