Wie Sie Word über OLE-Automatisierung von Visual FoxPro Duplex drucken

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 194306 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt die OLE-Automatisierung von Visual FoxPro an Microsoft Word für Windows 97 verwenden, um ein Dokument Duplex drucken.

Weitere Informationen

Da das Dialogfeld, das Duplexdrucken legt die Druckereinrichtung gehört, ist kein direkter Befehl, den Sie ausstellen können, der ein Dokument drucken Duplex verursacht. Es gibt jedoch drei Möglichkeiten, die funktionieren und Sie können Dokumente Duplex drucken.

Der Drucker, die in diesem Test verwendet ist einem Hewlett-Packard LaserJet-Drucker den Duplexdruck unterstützt.

Methode 1

Verwenden Sie das PRINT-Feld in Word den Drucker Escape-Code senden, der den Drucker im Duplexmodus versetzt. Der folgende Code veranschaulicht dies:
   oWord=CREATEOBJECT("Word.Application")
   WITH oWord
      .Visible=.T.
      .Documents.Add

      .Activewindow.View.ShowFieldCodes=0   && Don't view field codes.
      * Insert PRINT field & Hewlett-Packard escape code for duplex, long-
      * edge binding.
      * It is an ampersand, lower-case L, numeric 1, and upper-case S.
      .Selection.Fields.Add(.Selection.Range,-1,"PRINT 27 &l1S")
      .Selection.Moveright

      .Selection.Insertafter("Page 1")
      .Selection.Moveright

      odlog=oWord.Dialogs(159) && Insert page break w/ Dialogs collection.
      odlog.Execute

      .Selection.Insertafter("Page 2")
      .Selection.Moveright

      .Printout(0)                   && 0 turns off background printing.

      .Application.Quit(0)           && Quit, don't save & don't prompt.
   ENDWITH
				
dieser Code funktioniert nicht, wenn das Word-Dokument gemischte Orientierung, enthält, das Hoch- und Querformat Abschnitte ist.

Hinweis: Dieser Code funktioniert nur mit den Service Release-1 (SR-1) für Word 97. Frühere Versionen von Word 97 führen nicht duplex drucken, die mithilfe dieses Codes.

Für die Word-Dokument ordnungsgemäß drucken sollte es keine Kopf- oder Fußzeilen auf jeder Seite enthalten. Jedoch sollten Sie Duplex drucken, wenn das Dokument Setup, um eine andere haben ist erste Kopfzeile oder Fußzeile nur und das PRINT-Feld wird in der ersten Zeile der Header, gefolgt von einem Wagenrücklauf eingefügt.

Methode 2

Verwenden Sie den Tastaturbefehle Befehl, um Tastenanschläge an Word senden, die simuliert mit Tastenanschläge um das Dialogfeld Drucken zu öffnen.
   oWord=CREATEOBJECT("Word.Application")
   WITH oWord
      .Visible=.T.
      .Documents.Add

      * This code creates a two page document to print.
      .Selection.Insertafter("Page 1 - With SendKeys")
      .Selection.Moveright
      odlog=oWord.Dialogs(159) && Insert page break w/ Dialogs collection.
      odlog.Execute
      .Selection.Insertafter("Page 2 - With SendKeys")
      .Selection.Moveright
      * End of document creation.

      .Application.Activate
      .Wordbasic.Sendkeys("%fp%p%d{enter}{tab}{enter}", -1)
      =INKEY(2)   && May need to wait couple seconds before quitting.
      .Application.Quit(0)           && Quit, don't save & don't prompt.
   ENDWITH
				
in der SendKeys-Befehl, der % Signieren darstellt, die mit der ALT-Taste auf der Windows-Menüs. Der INKEY()-Befehl ermöglicht Word, die Tastatureingaben verarbeiten, bevor Visual FoxPro für Windows das Beenden verarbeitet. Dies kann oben, nach unten oder entfernte abhängig von der Anwendung angepasst werden müssen.

SendKeys verwenden möchten, muss Word sichtbar sein nicht minimiert, da die Tastatureingaben eines aktiven Fensters wechseln müssen. Sie können Word außerhalb des Bildschirms verschieben, mithilfe des Befehls AnwVerschieben verwenden, so dass Word nicht angezeigt, aber weiterhin im Dialogfeld angezeigt. Mithilfe der SendKeys kann sich auch disconcerting werden, da die Menüs und Dialogfelder öffnen und, verarbeiten als wenn Sie in Word waren, und drücken die Tasten ALT + F, um das Menü Datei geöffnet.

Methode 3

Erstellen Sie ein Word-Makro, das die SendKeys ausstellt. Wenn das Makro SendKey heißt, das Makro Starten von Visual FoxPro mithilfe des folgenden Befehls:
     oWord=CREATEOBJECT("Word.Application")
       WITH oWord
       .Visible=.T.
       .Documents.Add
       .Application.Activate
       .Run("SendKey")
       .Application.Quit(0)           && Quit, don't save & don't prompt.
    ENDWITH
				
der minimale Code für das Word-Makro zum Senden von Schlüsseln für Duplexdruck folgt:
   Sub SendKey()
      SendKeys "%fp%p%d{enter}{tab}{enter}"
   End Sub
				
Please see Hinweis Hinweis in Methode 2 for Probleme auftreten können mithilfe der Tastaturbefehle.

Informationsquellen

Weitere Informationen finden Sie in den folgenden Artikeln der Microsoft Knowledge Base:
135569PCL-Escapezeichen mit dem PRINT-Feld
Weitere Informationen Informationen zum Beziehen von Word für Windows 97 Service Release 1 finden Sie die folgende KB-Artikelnummer:
172475Wie beziehen und installieren Sie Microsoft Office 97 SR-1
Microsoft Word Visual Basic-Hilfe

(c) Microsoft Corporation 1998. Alle Rechte vorbehalten. Beiträge von Dean Christopher, Microsoft Corporation.

Eigenschaften

Artikel-ID: 194306 - Geändert am: Donnerstag, 27. Januar 2005 - Version: 2.2
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual FoxPro 5.0a
  • Microsoft Visual FoxPro 6.0 Professional Edition
Keywords: 
kbmt kbcode kbhowto KB194306 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 194306
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com