UniScript als eigenständiges Programm¶
Der UniScript-Interpreter kann ab UniPlot 3.3 nicht nur innerhalb von UniPlot, sondern auch als separates Programm verwendet werden.
Anwendung¶
Öffnen Sie das Windows-Kommandofenster cmd.exe.
Starten Sie UniScript. Geben Sie dazu den Befehl us ein, um das Programm
us.exe aus dem Verzeichnis c:\Programme\UniPlot\Program zu
starten. UniScript zeigt mit dem Prompt (einem Sternchen), dass es für Ihre
Eingaben bereit ist.
Sie können UniScript als leistungsfähigen Taschenrechner verwenden. Wenn Sie UniScript beenden wollen, verwenden Sie die Tastenkombination Strg+C.
Sie können auch Programme schreiben. Das folgende Programm ncdir.ice gibt
die Namen aller Kanäle der NC-Dateien eines Verzeichnisses aus. Aufruf:
us ncdir.ice d:\*.nc.
Unter Windows 2000/XP kann die Funktion auch einfacher aufgerufen werden, wenn
Sie die Dateiendung .ice mit dem Programm us.exe verbinden.
Öffnen Sie dazu die Systemsteuerung und wählen unter
Ordneroptionen=>Dateitypen=>Erweitert. Für die Erweiterung .ice
geben Sie für den Vorgang „Open“ den folgenden String an:
c:\uniplot\program\us.exe "%1" "%2" "%3" "%4" "%5" "%6" "%7" "%8" "%9"
Anstatt us ncdir.ice d:\*.nc kann dann ncdir d:\*.nc geschrieben
werden:
// ncdir.ice
def ncdir(sv)
{
nold = nc_seterror_options(0);
for (i in 1:len(sv)) {
ncid = nc_open(sv[i], NC_NOWRITE);
if (ncid == -1) continue;
print sv[i];
nvars = nc_inquire_nvars(ncid)
if (nvars == 0) continue;
for (j in 0:nvars-1) {
print "\t" + nc_varinq_name(ncid, j);
}
nc_close(ncid);
}
nc_seterror_options(nold);
}
args = getargs();
if (len(args) >= 3) {
loadlib("rs_ncdf.dll");
for (i in 1:len(args)-2) {
sv = GetDirectory(args[i+2])
ncdir(sv)
}
} else {
print "usage: ncdir filename(s)";
}
UniScript als COM-Server¶
Das Programm usserv.exe aus dem Verzeichnis
c:\Programme\UniPlot\Program kann als COM-Server verwendet werden.
Beispiel (VBA-Programm in Excel):
Public Sub Test()
Set us = CreateObject("UniScript32")
MsgBox us.Call2("sin", 1)
End Sub
Der UniScript-Server hat folgende Funktionen: UniScript.Call, UniScript.Call2, UniScript.Load.
Der UniScript-Server kann auch von UniPlot aufgerufen werden.
Anmerkungen¶
Beim Start von UniScript wird ein Startup-File geladen. Die Startup-Dateien heißen
usstart.icfürus.exe, bzw.usserv.icfürusserv32.exe.In der Startup-Datei werden DLLs, UniScript-Dateien (.ic) und UniScript-Librarys (.icl) geladen:
loadlib("rs_lib.dll"); loadlib("rs_lib2.dll"); loadlib("rs_obj.dll"); loadlib("rs_auto.dll"); loadlib("rs_map.dll"); loadlib("rs_date.dll"); load(GetRootDirectory() + "script\alias.ic"); load(GetRootDirectory() + "script\Register.ic"); loadiclib(GetRootDirectory() + "Program\rs_sl.icl");
Es können nicht alle Funktionen von UniPlot verwendet werden. Die Funktionen die auf UniPlot-Objekte (Dokumente, Diagramme, Datensätze usw.) zugreifen, können nicht verwendet werden.
id-1936455