Як видалити системні форми принтерів за замовчуванням?


12

У Windows існують системні форми принтерів за замовчуванням, які неможливо видалити з діалогового вікна Властивості сервера друку. Чи є якийсь інший спосіб їх усунення? Ми ніколи не будемо використовувати розміри сторінок, як Envelope, B5 (JIS), US Std Fanfold тощо, і я хотів би врятувати користувачів (і себе!) Від необхідності прокручувати великий довгий список шуму.

У полі властивостей сервера друку є непридатна кнопка видалення

Нашими серверами друку є Windows Server 2003, якщо це має значення.


Видалення системних форм може бути не можливим. Чому б не спробувати встановити форму за замовчуванням для кожного лотка на принтері, а не постійно прокручувати вниз?
ServerFaulter

@ServerFaulter, мені потрібні однакові форми для декількох принтерів (і вони мають лише один лоток здебільшого; більшість - це плоттерні плоттери великого формату).
matt wilkie

2
Це повністю гетто, але ви можете назвати свої форми 000 MyForm - MyPageSizeчи подібні.
voretaq7

@ voretaq7 Я вважаю, що це найкращий варіант.
День

2
@Dan Це уникає проблеми, але, безумовно, її не вирішує. Ви дійсно ДОЛЖЕН би мати змогу видалити непотрібні шаблони, але якщо МС зробить цю задачу, викрутіть його.
voretaq7

Відповіді:


5

Першою моєю думкою було зрозуміти, чи можна це досягти за допомогою API API Windows, але згідно з цим веб-сайтом про API Win32 Printer Forms видалити системні форми навіть неможливо:

Видалити форму Form () у вбудованій формі не можна: вона не працює з ERROR_INVALID_PARAMETER.

Друга моя думка полягала в тому, щоб знайти відносно унікальну назву форми, таку як US Std Fanfoldпошук у всьому реєстрі. Дивно, але врожаї в'їжджають у досить численних місцях. Тому моєю пропозицією було б скласти порожню 32-бітну машину (32-бітну, щоб уникнути плутанини з тіньовими клавішами) та поїхати в місто за деякими з цих клавіш. Якщо ви працюєте з цим, його слід легко перенести туди, куди вам це потрібно.

Однак слід сказати, що враховуючи те, наскільки Microsoft явно не хоче, щоб ви цього робили, ви відкриваєтесь для підтримки та сумісності.


Сторінка API пов'язаних форм надзвичайно добре написана. Незважаючи на те, що я не розробник, це робить багато речей для мене набагато зрозумілішими. Дякую.
matt wilkie

2

Стандартні паперові форми є частиною драйверів принтера і їх можна видалити лише вручну з відповідних файлів.

Ось посібник, як мені вдалося це зробити:

1. Відкрийте CMD як адміністратор.

2.enter "printui / s / t2" (без лапок)

3. У вікні відкривання виберіть принтер, для якого паперові форми слід видалити, і натисніть Властивості внизу.

4.Знайдіть перелічені файли в Провіднику за вказаним шляхом (можливо, C: \ Windows \ System32 \ spool \ drivers \ x64 \ 3)

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

6.Открийте кожен з оригінальних файлів за допомогою редактора (по одному). Якщо він містить читабельний код, натисніть Ctrl + F (щоб відкрити пошук) та введіть одну з найбільш відомих паперових форм, яку слід видалити (наприклад, Листівка, Юридична літера, Лист ...) Якщо жодне із шуканих слів не знайдено, закрийте файл, не зберігаючи, і спробуйте наступний файл. (У моєму випадку я знайшов їх у файлах із розширенням ".gpd" und ".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, якщо є більше принтерів для позбавлення від небажаних форм).

-якщо виникають проблеми: перезапис останнього редагованого файлу із резервною копією. (Можливо, ви помилилися, тому спробуйте ще раз)

Сподіваюсь, це допомагає. Ура!


1

На самому сервері друку форми розміщені в реєстрі:

HKLM \ System \ CurrentControlSet \ Control \ Print \ Форми

(ПРИМІТКА. Я ніколи не видаляв форми звідси, тому я б спершу створив резервну копію ключа перед видаленням і тестуванням результатів).


Я видалив записи під цим ключем і перезавантажився, але вони все ще відображаються у списку (Принтери та факси> Властивості сервера> Форми).
matt wilkie

... також існує багато форм, перелічених у діалоговому вікні "Властивості сервера", які не відображаються під цим ключем реєстру.
matt wilkie

1
Саме це і потрібно було зробити, щоб позбутися другої форми A2, яку я не міг видалити інакше. Дякую!
Штефан Шмідль

1

Запустіть процес "Управління друком" (printmanagement.msc).

У розділі Сервери / форми друку можна видалити друкарські форми, але не вбудовані форми.

Я ще не знайшов спосіб видалити вбудовані форми, тому мені теж не подобається бачити весь цей «шум» у цій спадному меню.


1
Це набагато кращий інтерфейс, ніж властивості принтера для управління кількома формами принтерів або користувачів, дякую. Шкода, що вбудовані пристрої неможливо видалити або принаймні приховати від звичайного перегляду.
matt wilkie
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.