per VBA Printorganizer steuern


Bezieht sich auf
Produkt(e):MicroStation
Version(en):08.11.09.538
Umbegung: N\A
Produktbereich: Programmierung
Produktunterbereich: VBA
Ursprünglicher Autor:Artur Goldsweer, Bentley Technical Support Group

 

Problembeschreibung
Beim Versuch Zeichnungsdateien in den Printorganizer per VBA hinzuzufügen, tritt ein Fehler auf: "Ungültige Eingabe" bzw. "invalid Input":
 
Schritte zur Problembehebung
Folgende Programmzeilen sollen ausgeführt werden:

    Dim filePath As String
    filePath = "C:\Mein Ordner\test.dgn"
    CadInputQueue.SendKeyin "PRINTORGANIZER ADD FILE " + filePath       ' <-- bei dieser Zeile tritt der Fehler auf
    CadInputQueue.SendKeyin "PRINTORGANIZER PRINT ALL"
Der Grund für den Fehler ist das Leerzeichen im Pfad zur Zeichnungsdatei. Dieses Leerzeichen führt dazu, dass der Pfad
zur Datei als 2 verschiedene Parameter für den print Befehl verstanden werden.
Um das Problem mit Leerzeichne zu umgehen, muß der Pfad zur Datei in Anführungszeichen gestellt werden,
d.h. die Variable filePath muß die Anführunsgzeichen enthalten, damit letztzlich der Keyin so aussieht:
PRINTORGANIZER ADD FILE "C:\Mein Ordner\test.dgn"

Um dies zu erreichen, kann man das Anführungszeichen z.B. alsZeichen hinzufügen.In der ASCII Tabelle
steht das Anführungszeichen an der Stelle 34, in VBA kann mit dem Ausdruck Chr(34) als Zeichen einem String hinzugefügt werden.

Ändert man die Programmzeile mit der Zuweisung für den Zeichnungspfad also folgendermaßen ab, akzeptiert der Printmanager diesen Ausdruck:

    filePath = Chr(34) + "C:\Mein Ordner\test.dgn" + Chr(34)