Autor Thema: Probleme beim Befehl "Name" (Umbenennen und Verschieben von Dateien)  (Gelesen 6380 mal)

Offline CarstenH

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 642
  • Geschlecht: Männlich
Re: LotusScript - Setzen und Lesen "Environment Variables"
« Antwort #20 am: 27.07.21 - 11:59:02 »
In LotusScript setze ich die Environment-Variablen, z.B.:

Call Session.Setenvironmentvar("MeinPDF24_verzeichnis", Win_Pfad, True)

Leider eine Fehlannahme - die Funktion Setenvironmentvar setzt eine notes.ini Variable, aber keine im Environment des Betriebssystems.

Notes hat, wie übrigens auch MS Office, keine Funktion zum direkten Setzen von Windows-Environment-Variablen!

Bitte lies meinen Post noch einmal, genau deshalb schrieb ich, dass es "nicht trivial" ist und habe auf ein Beispiel in VBA+Windows API verlinkt bei dem der Verfasser ebenfalls mit PDF24 diese Problematik angeht und löst. Das muss für Lotusscript nur etwas umgeschrieben werden da VBA und Script zwar ähnlich aber nicht identisch sind.

Wenn es funktionierte: Könnte ich eine Environment-Variable für einen, in der Loop wechselnden, Dateinamen immer neu setzen?

Natürlich, das ist ja der Sinn meines Vorschlags.

Man sollte nur eine kleine Pause zwischen dem Setzen der Variable, dem Druckeraufruf und der nächsten Runde einplanen da der Druckertreiber bei jedem Aufruf die Variable neu liest und man sicherstellen muss, dass man die Variable nicht schon wieder mit dem nächsten Wert überschreibt bis der Druckertreiber fertig geladen hat.

Möglicherweise muss man noch etwas mehr Grips reinstecken, falls z.B. das Timing da nicht klappt, die Windows Prozessliste auslesen und den PDF24 Task suchen und auf sein Ende warten. Auch damit nicht zu viele Prozesse gleichzeitig gestartet werden und das ganze sich aufhängt. Hab sowas mal vor 20 Jahren unter Win2K gemacht, grundsätzlich hat sich im Vergleich zu heute da nicht viel an der Vorgehensweise geändert.

HTH
Carsten
« Letzte Änderung: 27.07.21 - 12:23:01 von CarstenH »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz