Wie kann ich ...
Übersicht 
Anwendung 
Referenzen 
Bestellung 
Download 
Kontakt 
Links 

  ... Default-Werte in Dialog (z.B. "Speichern unter") eintragen?

Gerade im Speichern-unter-Dialog können programmspezifische Voreinstellungen häufig helfen, Zeit zu sparen und Fehler zu vermeiden:

  1. Wenn  das Standard-Format, in dem Ihre Anwendung abspeichert, für Sie nicht passend ist, können Sie beim Öffnen des Dialogs ein abweichendes Format voreinstellen.
  2. Wenn Sie aus einer Anwendung immer in ein bestimmtes Verzeichnis speichern möchten, können Sie eine Voreinstellung definieren oder bestimmte Pfade per Tastenkombination aufrufbar hinterlegen.

Für diese beiden Anwendungsfälle wird am Beispiel von Microsoft Outlook gezeigt, wie Sie mit Workarounder Default-Werte für Dialogboxen vorgeben.

1. Beutzerdefinierte Voreinstellung für Dateiformat

Beim Abspeichern von E-Mails ist das Nachrichtenformat (*.msg) häufig die Erste Wahl, weil die Nachricht komplett mit Dateianhängen auf die Festplatte gesichert wird. Anschließend kann man die Datei getrost aus dem Posteingang löschen, z. B.  um dort Speicherplatz zu sparen.
Outlook bietet allerdings ein anderes Format als Voreinstellung an, was leider dazu führt, dass bei so mancher Säuberung des Posteingangs die Wahl des richtigen Formats und damit das Sichern der  Dateianhänge vergessen wird.

Um die lästige Auswahl des richtigen Formats beim Öffnen des Speichern-unter-Dialoges in Outlook zu automatisieren, werden die beteiligten Fenster geöffnet (siehe nachfolgende Abbildung):
 

 

 

 

 


Die Ansteuerung des Dialoges nimmt man am besten per Tastatur vor. Dazu findet man (ggf. durch Ausprobieren) die folgende Vorgehensweise:

  1. Wie anhand der Unterstreichung sichtbar, kann das Auswahlfeld "Dateityp" mit folgender Tastenkombination aktiviert werden:
    Alt+t
  2. Das Nachrichtenformat ist der 2. Eintrag, der mit "n" beginnt. Unabhängig von der aktuellen Auswahl kann dieser Eintrag bei geöffnetem Auswahlfeld mit folgender Tastenfolge angewählt werden:
    Ende-Taste, n-Taste, n-Taste
  3. Abschließend kann das Auswahlfeld z. B. mit der Tabulator-Taste verlassen werden.

Übersetzt in die Syntax für das Senden von Tastendrücken (Infos hierzu z. B. auf der Referenzkarte) ergibt sich für die oben stehende Abfolge von Tastendrücken dieser Textausdruck:
%t{end}nn{tab}

Im Workarounder-Register "Fenster" wird ein passender Ereignisdatensatz gemäß folgender Abbildung angelegt und dort der Textausdruck als Parameter angegeben:
 

 
 


Hilfestellung zum Anlegen des Datensatzes:

  • Den neuen Ereignisdatensatz legen Sie mit der entsprechenden Schaltfläche links unten im Workarounder Hauptfenster bei geöffntem Register "Fenster" an.
  • Der Dialog zur Parametereingabe öffnet sich nach Aktivierung der Checkbox "Par?" oder über folgenden Menüeintrag:
    Skript bearbeiten/Parameter erfassen.
  • Zum Simulieren von Tastatureingaben wählt man über das Auswahlfeld rechts unten im Datensatz das "interne" Skript >TypeMessage oder z. B. das VisualBasic-Skript TypeMessage.vbs.
  • Die Titelzeilen der beteiligten Fenster wählt man am besten aus, wenn diese im Hintergrund geöffnet sind.
    Dazu gibt es einen speziellen Dialog, den man über das Kontextmenü des jeweiligen Eingabefeldes (via Rechtsklick auf das Eingagbefeld) aufruft.

Nach Aktivierung des Datensatzes und Schließen des Hauptfensters wird das soeben definierte Ereignis überwacht und die Tastatur-Akion ausgelöst, sobald im Posteingang der Menüeintrag "Datei/Speichern unter" gewählt wird und sich das entsprechende Dialogfenster öffnet.

Hinweis:
Die hier dargestellte Vorgehensweise kann man sehr einfach z. B. auf den Drucken-Dialog übertragen und beim Drucken aus einer bestimmten Anwendung automatisch ein vom Windows-Standarddrucker abweichendes Ausgabegerät voreinstellen.

2. (Default-)Pfade im Dialog "Speichern unter" eintragen

Im oben dargestellten Ereignisdatensatz kann man z. B. auch den folgenden Ausdruck als Startparameter für das Skript angeben:
%nC:\Eigene Dateien\Archivierte E-Mails{left}{tab}

Sobald das Fenster mit der Titelzeile "Posteingang-Microsoft Outlook" den Eingabefokus zu Gunsten des Dialogfenters "Speichern unter" verliert, tritt dadurch Folgendes ein:

  1. Das Auswahlfeld "Dateiname" wird aktiviert
  2. Dort wird folgender Text eingetragen:
    C:\Eigene Dateien\Archivierte E-Mails
  3. Durch einen simulierten Tastendruck auf die Pfeil-nach-links-Taste wird eventuell selektierter Text deselektiert und per Tabulatortaste das Auswahlfeld verlassen.

Als Effekt öffnet sich das Verzeichnis "C:\Eigene Dateien\Archivierte E-Mails" (sofern es auf dem Rechner existiert) und man kann die E-Mail direkt dort oder in ein Unterverzeichnis hinein speichern.
 

Variante:

Wenn Sie sich beim Speichern von Dateien häufig durch komplexe Verzeichnisstrukturen zu immer wieder den gleichen "Lieblingsverzeichnissen" durchwühlen müssen, dann lohnt es sich sicher Folgendes:
Sie können diese Pfade so hinterlegen, dass Sie sie per Tastenkombination anwendungsübergreifend im Speichern-unter-Dialog abrufbar werden:

  • Legen Sie für jede Tastenkombination einen neuen Ereignisdatensatz im Register "Tastatur" an.
  • Wählen Sie für das aktivierte Fenster den folgenden Titel:
    Speichern unter.
  • Geben Sie als Skript-Parameter die Tastatureingabe mit dem Pfad analog zu oben stehendem Beispiel vor.
  • Wählen Sie als zu startendes Skript eines der Folgenden (siehe Hinweis):
    • TypeMessageBlock.vbs (sperrt Benutzerinput während der Textausgabe)
    • WaitType.vbs (wartet nach seinem Aufruf 0,5 Sekunden und tippt dann den als Parameter übergebenen Text)
       

Das Ergebnis könnte dann z. B. wie folgt aussehen:

 
 


Für jede Anwendung, die den Standard-Dialog zum Speichern einer Datei verwendet, wären mit den oben abgebildenten Ereignisdatensätzen folgende Tastaturshortcuts möglich:

  • Strg+e ruft z. B. den Pfad "C:\Eigene Dateien\Archivierte E-Mails" auf (Skriptparameter: siehe oben).
  • Strg+t ruft das folgende, im Netzwerk befindliche Verzeichnis auf:
    \\Max\e-temp\Transfer
    (Skriptparameter: siehe Abbildung)

Hinweis:
Es ist erforderlich, dass während der Ausgabe der simulierten Tastendrücke nicht mehr die Tasten aktiv sind, die der Benutzer gedrückt hat, um das Ereignis auszulösen. (Ansonsten würde im vorliegenden Beispiel die immer noch gedrückte Strg-Taste das Ergebnis der Tastaturaktion verfälschen.)
Dies gewährleistet man am besten durch Verwendung des Beispielskriptes TypeMessageBlock.vbs für die Textausgabe. Es setzt alle Tasten zurück und blockiert weitere Benutzereingaben für die Dauer der Textausgabe. (Im Fehlerfall wird man die Blockade mit Strg+Alt+Entf wieder los.)
Alternativ kann man durch eine entsprechende Verzögerung im Skript mit der Textausgabe solange warten, bis der Benutzer die Taste wahrscheinlich wieder losgelassen hat. Diese Strategie kann man durch Verwendung von WaitType.vbs realisieren.
 

Hinweis 2:
Natürlich können Sie die dargestellte Variante auch mit der Defaultvorgabe eines Verzeichnisses über einen Ereignisdatensatz im Register "Fenster" kombinieren.

 

 

[Zurück][Nach oben][Weiter]

Copyright(c) 2006 Uta Nerger. Alle Rechte vorbehalten.