Как заставить Word двухсторонней печати с помощью автоматизации OLE из Visual FoxPro

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке:194306
Эта статья помещена в архив. Она предлагается "как есть" и обновляться не будет.
Аннотация
В данной статье описывается использование автоматизации OLE из Visual FoxPro дляMicrosoft Word для Windows 97 в документе двухсторонней печати.
Дополнительная информация
Начиная с диалоговым окном, устанавливающий двусторонней печати является частью принтераустановки, не является прямым команда, которая может выдавать, приводит кдокумент для печати дуплекс. Тем не менее существует три способа, которые работаютпозволяет печатать документы дуплекс.

Принтер, используемый в этом тесте является принтеров Hewlett-Packard LaserJet, которыйподдерживает двустороннюю печать.

Способ 1

Использовать для отправки принтера escape-код, который помещает поле печати в Wordпринтер в полудуплексном режиме. Это показано в следующем коде:
   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				
Этот код не работает, если документ Word содержит смешанные ориентацииЭто разделы книжная и Альбомная.

Примечание Этот код работает только с помощью исправлений-1 (SR-1) для Microsoft Word 97.Предыдущие версии Microsoft Word 97 не не двустороннюю печать, с помощью следующего кода.

Для документа Microsoft Word для правильной печати следует содержит заголовки илинижние колонтитулы на каждой странице. Тем не менее он должен двухсторонней печати если документпрограмму установки, чтобы установить другой первой страницы в верхний или нижний колонтитул только и печатьЧтобы вставить поле в первой строке заголовка кареткиВозврат.

Способ 2

Команда SendKeys для отправки нажатия клавиш в Microsoft Word, который имитирует использованиесочетания клавиш для открытия диалогового окна «Печать».
   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				
В команде Sendkeys знак % представляет ALT с помощью ключа доступаМеню Windows. Команда INKEY() позволяет обработки нажатий клавиш в WordПрежде чем Visual FoxPro для процессов Windows Quit. Это может быть необходимоСкорректированная вверх, вниз или удаляются в зависимости от приложения.

Использование Sendkeys слова должны быть видимыми, не сворачивается, с момента нажатия клавишнеобходимо перейти к активному окну. Microsoft Word можно переместить за пределы экрана с помощьюКоманда AppMove, таким образом, чтобы Word не отображается, но по-прежнему диалоговоеОтображение. Кроме того, может сбить с помощью Sendkeys поскольку меню иОткрытие диалоговых окон и обработки в Microsoft Word, и нажатие клавиши ALT + Fклавиши, чтобы открыть меню файл.

Способ 3

Создание макроса Word, который выдает Sendkeys. Если имя макросаSendKey, затем запустить макрос из Visual FoxPro, используя следующую команду:
     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				
Минимальный код макроса Word для отправки ключей для двусторонней печативыглядит следующим образом:
   Sub SendKey()      SendKeys "%fp%p%d{enter}{tab}{enter}"   End Sub				
Примечание Пожалуйста, ознакомьтесь в способе 2 для возможных проблем с помощьюSendKeys.
Ссылки
Для получения дополнительных сведений щелкните следующие номера статей базы знаний Майкрософт:
135569PCL управляющие коды для использования с поля PRINT
Для получения дополнительных сведений о получении исправлений Microsoft Word для Windows 97 1 щелкните следующий номер статьи базы знаний Майкрософт:
172475Получение и установка MS Office 97 SR-1
Microsoft Word справки Visual Basic

(c) Корпорация Майкрософт, 1998. Все права защищены. Взносы, ДинКристофер,Корпорация Майкрософт.
kbVFp600 kbole kbInterOp kbvfp500a

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 194306 — последний просмотр: 12/05/2015 09:28:58 — редакция: 4.0

Microsoft Visual FoxPro 6.0 Professional Edition

  • kbnosurvey kbarchive kbcode kbhowto kbmt KB194306 KbMtru
Отзывы и предложения