Назад | Перейти на главную страницу

Как удалить системные формы принтера по умолчанию?

В Windows существуют стандартные формы принтера, которые нельзя удалить из диалогового окна «Свойства сервера печати». Есть ли другой способ их удаления? Мы никогда не будем использовать такие размеры страниц, как Envelope, B5 (JIS), US Std Fanfold и т. Д., И я хотел бы избавить пользователей (и себя!) От необходимости пролистывать большой длинный список шума.

Наши серверы печати - это Windows Server 2003, если это имеет значение.

Моя первая мысль заключалась в том, чтобы посмотреть, можно ли этого добиться с помощью Windows API, но согласно этот веб-сайт о Win32 Printer Forms API, невозможно даже удалить системные формы программно:

Нельзя использовать функцию DeleteForm () во встроенной форме: она не работает с ERROR_INVALID_PARAMETER.

Вторая мысль заключалась в том, чтобы найти относительно уникальное имя формы, например US Std Fanfold и поиск по всему реестру. Удивительно, но въездной урожай во многих местах. Поэтому я предлагаю создать пустую 32-битную машину (32-битную, чтобы избежать путаницы с теневыми ключами) и поехать в город на некоторых из этих ключей. Если вы заставите его работать, его будет легко перенести туда, где вам нужно это сделать.

Однако следует сказать, что, учитывая, насколько Microsoft явно не хочет, чтобы вы это делали, вы открываете себя для проблем поддержки и совместимости.

Стандартные бумажные формы являются частью драйверов принтера и могут быть удалены только вручную из соответствующих файлов.

Вот руководство о том, как мне это удалось:

1. Откройте CMD от имени администратора.

2. введите «printui / s / t2» (без кавычек)

3. В открывшемся окне выберите принтер, для которого нужно удалить бумажные формы, и нажмите «Свойства» внизу.

4. Найдите перечисленные файлы в проводнике по указанному пути (возможно, C: \ Windows \ System32 \ spool \ drivers \ x64 \ 3)

5. Сделайте резервную копию всех этих файлов (например, в папке на рабочем столе).

6. Откройте каждый из исходных файлов с помощью редактора (по одному). Если он содержит читаемый код, нажмите Ctrl + F (чтобы открыть поиск) и введите одну из наиболее заметных названий бумажных форм, которые следует удалить (например, Открытка, Юридическая информация, Письмо ...). Если ни одно из искомых слов не найдено, закройте файл без сохранения и попробуйте следующий файл. (В моем случае я нашел их в файлах с расширением ".gpd" и ".inx" для физических принтеров, ".PPD" для моего PDF-Creator)

7. Когда запись найдена: Для всех бумажных форм должен быть абзац с блоками кода. Некоторые примеры:

    [JAPANESE_POSTCARD]
    MediaType=8.1055
    InputBin=7

или

    *Option: JAPANESE_POSTCARD_90x90x50x95
    {
        *Name: ""
    }

или

    *Option: JAPANESE_POSTCARD
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *Constraints: LIST(Duplex.VERTICAL, Duplex.HORIZONTAL)
        *Constraints: InputBin.4
        *PageDimensions: PAIR(4724, 6992)
        *PrintableArea: PAIR(4412, 6680)
        *PrintableOrigin: PAIR(156, 156)
        *switch: Orientation
        {
            *case: PORTRAIT
            {
                *CursorOrigin: PAIR(156, 156)
            }
            *case: LANDSCAPE_CC270
            {
                *CursorOrigin: PAIR(4568, 156)
            }
        }
        *Command: CmdSelect
        {
            *CallbackID: 0x00470002
            *Order: DOC_SETUP.2
        }
        *Command: CmdSelect
        {
            *CallbackID: 0x00470002
            *Order: PAGE_SETUP.2
        }
    }

Удалите все такие блоки для всех нежелательных бумажных форм. Скорее всего, существует более одного абзаца, содержащего похожие блоки, поэтому продолжайте поиск в файле и повторяйте, пока не найдете ни одного. Затем сохраните и закройте файл.

8. После изменения каждого файла откройте любую документацию (например, Word, Excel ...) и проверьте, не указаны ли нежелательные бумажные формы в свойствах печати этого принтера.

-если все еще присутствует: вернуться к шагу 6, выполнить поиск в следующем файле.

-если нет: поздравляю! (Вернитесь к шагу 3, если есть другие принтеры, чтобы избавиться от нежелательных форм).

-если возникнут проблемы: перезаписать последний редактированный файл резервной копией. (Возможно, вы ошиблись, попробуйте еще раз)

Надеюсь это поможет. Ура!

На самом принт-сервере формы находятся в реестре:

HKLM \ System \ CurrentControlSet \ Control \ Print \ Forms

(ПРИМЕЧАНИЕ: я никогда сам не удалял формы отсюда, поэтому я бы сделал резервную копию ключа перед удалением и проверкой результатов).

Запустите процесс «Управление печатью» (printmanagement.msc).

В разделе «Серверы печати / формы» вы можете удалить формы принтера, но не встроенные формы.

Мне еще предстоит найти способ удалить встроенные формы, потому что мне тоже не нравится видеть весь этот «шум» в этом раскрывающемся списке.