Могут ли 32-битные драйверы печати работать на 64-битных окнах?

8

Я читаю, и кажется, что 32-разрядные драйверы не работают под 64-разрядными окнами. Это правда? поскольку 32-разрядные приложения могут работать под 64-разрядными окнами, кажется смешным, что 32-разрядные драйверы принтеров не могут. Драйверы принтера работают на уровне ядра?

Похоже, мы в адском драйвере для наших сред RDP.

Matt
источник
Это принтер Canon? :) Я недавно имел дело с этим
kolypto

Ответы:

13

64-разрядные версии Windows не поддерживают 32-разрядные драйверы режима ядра. Заявления Microsoft о том, что Vista здесь (обязательно посмотрите на ошибки внизу - в статье есть серьезная ошибка, которую она исправляет), и то же самое верно для Windows 7 и Windows Server 2008.

Нет волшебного «переключателя», который вы можете использовать, чтобы позволить 32-битным драйверам режима ядра работать на ядре x64. Они не будут, точка. (Да, да ... Я полагаю, что кто-то мог бы написать какую-то уродливую систему мерцания, чтобы сделать это возможным, но ни у кого за пределами Microsoft не было бы необходимой документации, чтобы написать такую ​​вещь ... Кроме того, проще запустить 32- битная ОС под виртуализацию на 64-битном хосте, если вам это действительно нужно ...)

Что касается драйверов принтеров, Easy Print - это ответ Microsoft на кошмар драйверов клиентов на стороне клиента в среде служб терминалов, но вам нужна Windows Server 2008 на компьютере сервера терминалов.

Эван Андерсон
источник
Спасибо за детали. На самом деле это были драйверы принтеров, о которых я говорил, которые, как мне кажется, выполнялись в пространстве пользователя. Теоретически должно быть возможно запускать 32-битные драйверы ядра через какой-то слой поддержки, не так ли? Мне уже удалось загрузить 16-битные DLL под 32-битные программы, а также 32-битные DLL под 16-битные программы. Да, я тоже программист.
Мэтт
Интересно ... msdn.microsoft.com/en-us/library/aa489557.aspx
Мэтт
Насколько я помню, Easy Print отстой!
Мэтт
Я однажды попробовал это в лаборатории, но я не верю, что когда-либо использовал его где-либо на производстве. Полиграфия, в общем, отстой.
Эван Андерсон
1

На вашем сервере печати можно установить 32-битные драйверы вместе с 64-битными драйверами. Нажмите на сервер печати, перейдите на страницу параметров принтера и нажмите «дополнительные драйверы», чтобы установить 32-разрядную версию. Имя должно точно соответствовать.

У крупных поставщиков принтеров есть 64-битные совместимые драйверы. Также ознакомьтесь с универсальным драйвером печати HP и драйвером глобальной печати Xerox. Работал для большинства принтеров в моей сети. Драйвер Xerox обещает работать на любом принтере в любом месте (но я использую его только для машин Xerox).

Quinten
источник
1
Я думаю, что вы пропустили часть о RDP. Насколько я помню, у нас было несколько клиентов, подключающихся к Windows Server 2003. Они использовали Windows 7, и драйверы не работали, и не было драйверов для их старых принтеров.
Мэтт
Старый принтер может стоить обновить. Однако мы используем принтеры старше 15 лет, которые имеют 64-разрядные драйверы. В любом случае, любой хороший принтер - это Postscript или PCL - он говорит на стандартном языке принтера, и универсальный драйвер будет работать нормально. Я не сталкивался с какими-либо проблемами при использовании RDP.
Quinten
@Quenten - спасибо, на самом деле эти клиенты были рядом независимых детских садов. Мы просто размещали стороннее приложение на сервере термина. Таким образом, сами клиенты могли обновить свои принтеры. Вместо этого мы сейчас используем TSPrint.
Мэтт
0

Вполне выполнимо Инструкции со скриншотами здесь: http://blogs.technet.com/sbs/archive/2009/02/13/how-to-add-32-bit-print-drivers-to-sbs-2008.aspx . Не беспокойтесь, что пост посвящен SBS, он отлично работает и с ванильными x64-версиями W2K8.

Шон Эрп
источник
1
Помните, что вы не запускаете 32-битный драйвер на сервере SBS 2008. Вы просто помещаете его в общую папку, чтобы разрешить соответствующим 32-битным клиентам автоматически устанавливать драйвер. «Адская» ситуация, на которую ссылается OP, - это компьютеры терминальных серверов на базе x64 с 32-разрядными клиентами, которые подключаются и ожидают, что смогут использовать «Перенаправление принтера» для отправки заданий печати с сервера терминалов на локальный принтер клиента. Поиск 64-разрядных драйверов для старых принтеров может быть затруднен, особенно если производитель использует 64-разрядные драйверы для продажи новых принтеров.
Эван Андерсон
Данг ... пропустил часть RDP. Вы правы, Easy Print - это путь. Производители принтеров могут использовать нехватку 64-разрядных драйверов для продажи новых принтеров, но они продают новые принтеры для продажи новых тонера / чернил;)
Sean Earp
-2

Некоторые драйверы будут работать, некоторые - нет.

В 64-разрядных версиях Windows Vista нельзя устанавливать драйверы, которые не «подписаны». Это означает, что если вы пытаетесь установить 32-разрядные неподписанные драйверы, у вас возникнут проблемы.

К счастью, вы можете отключить это ограничение, запустив в командной строке следующее:

bcdedit /set loadoptions DDISABLE_INTEGRITY_CHECKS
nrgyz
источник