Cómo instalar a controladores de impresora desde un servidor de impresión de red

Seleccione idioma Seleccione idioma
Id. de artículo: 203604 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

Resumen

Servidores de impresión que se basan en tecnología de Microsoft Windows NT pueden servir archivos de controlador de impresora para clientes Windows 95, Windows 98, Windows 98 Segunda edición (SE) y Windows Millennium Edition. En este artículo se describe cómo identificar, descargar e instalar la instalación del controlador de impresora en el equipo cliente.

Más información

Windows 95 y versiones posteriores de dicho sistema operativo compatible con Point and Print. Point and Print es un servicio mediante el cual un usuario puede configurar e imprimir en una impresora de red sin tener que proporcionar los controladores de impresora adecuados. Ahora en adelante en este artículo, Windows 95, Windows 98, Windows 98 Segunda edición y Windows Millennium Edition nos referiremos a colectivamente como un cliente Windows 95.

Para obtener más información sobre el uso de características de Point and Print en los clientes Windows 95, consulte "Conectarse a la impresora compartida" en el siguiente artículo de Microsoft Knowledge Base:
141839 Cómo configurar una impresora de red utilizando Point and Print
Point and Print es posible porque los archivos del controlador se instalaron en la impresora compartida en el servidor para una instalación de controlador de impresora de cliente de Windows 95.Para obtener información adicional acerca de cómo hacer esto, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
142667 Cómo compartir el controlador de impresora de Windows 95 en Windows NT 4.0 o Windows 2000
A veces desea automatizar mediante métodos de programación de la instalación de impresoras en equipos cliente que ejecutan sistemas operativos basados en Windows 95. Los siguientes pasos instalará los archivos del controlador de impresora de forma similar al punto de Windows 95 y el proceso de instalación de impresión.

Para instalar los archivos de controlador de impresora desde un servidor de impresión, siga estos pasos:
  1. Identificar la impresora de destino en un servidor de impresión mediante una ruta de acceso UNC a la impresora compartida.
  2. Obtener la información de instalación de controladores desde el servidor de impresión mediante una llamada a la función GetPrinterDriver con la cadena de entorno adecuadas.
  3. Compruebe si la instalación del controlador ya está instalada y resolver los conflictos.
  4. Determinar dónde se deben instalar los archivos del controlador para la instalación del controlador mediante una llamada a la función GetPrinterDriverDirectory .
  5. Determinar la ubicación de los archivos del controlador en el servidor de impresión.
  6. Copiar los archivos del controlador de recurso compartido del servidor de impresión a la carpeta de instalación local. La estructura DRIVER_INFO que obtuvo anteriormente proporciona la lista de todos los archivos del controlador.
  7. Realizar cambios en la información del controlador de impresora según resulte adecuado para el equipo local.
  8. Instale la instalación del controlador mediante una llamada a la función AddPrinterDriver .

Paso 1: Identificar la impresora de destino

Por lo general la impresora de destino se especifica de alguna manera por el usuario por un nombre que se escribe en una interfaz de usuario o por la selección de una lista. Para propósitos de programación, el nombre UNC de la impresora de destino se puede almacenar en una lista o base de datos que accede el programa. Como alternativa, puede determinarse el nombre UNC de la impresora mediante un algoritmo que utiliza la función de EnumPrinters para encontrar las impresoras que pueden tener acceso a la red.

Sea cual sea la técnica utilizada, la ruta de acceso UNC que identifica la impresora contiene el nombre del servidor y el nombre de la impresora.

Paso 2: Obtener información sobre el controlador de la impresora

Para comenzar el proceso de instalación de controlador, un programa necesita conocer la lista de archivos de controlador y la configuración de los archivos del controlador en la instalación del controlador. Esta información es proporcionada por el servidor de impresión mediante una llamada a la función GetPrinterDriver para inicializar un búfer de DRIVER_INFO_3 con la información de instalación de controlador para la impresora compartida.

Para llamar a la función GetPrinterDriver , es necesario un identificador de la impresora. Este identificador se obtiene de la función OpenPrinter que utiliza el nombre UNC de la impresora que identificó en el paso 1. Para los clientes que se basan en Windows 95, el segundo parámetro para GetPrinterDriver debe ser siempre NULL porque no hay sólo una versión de entorno de Windows 95. Un búfer de DRIVER_INFO_3 debe solicitarse para clientes Windows 95 debido a esta definición de búfer se utiliza para instalar las instalaciones de controlador en todos los sistemas operativos posteriores y Windows 95. Para obtener una explicación de cómo llamar a las funciones de la cola de impresión de Windows que llene el llamador búferes asignado correctamente, consulte el siguiente artículo de Knowledge Base:
158828 HOWTO: Cómo llamar correctamente a las API de Win32 cola de impresión (enumeración)

Paso 3: Comprobar una instalación anterior del controlador de impresora

Es posible que la instalación del controlador que se identifica en el servidor de impresión ya está instalada en el cliente de Windows 95. Si ya está instalado, es posible que no sea necesario volver a instalar los archivos del controlador. Cuando la instalación de Point and Print encuentra este conflicto, provoca un cuadro de diálogo para resolver el conflicto mediante la oferta de mantener el controlador existente o reemplazarla. La acción recomendada es mantener los archivos de controlador existente porque existe una presunción de que son utilizados por las instalaciones existentes de la impresora en el cliente.

Reemplazo de controlador de impresora es un tema complejo porque es necesario sobrescribir los archivos del controlador. No se puede sobrescribir los archivos del controlador si están en uso. Para liberar la instalación del controlador de uso, ninguna instalación de la impresora puede estar usando los controladores de impresora. Este artículo describe cómo agregar controladores de impresora, pero no se describe cómo reemplazar los controladores de impresora.

Paso 4: Obtener el destino de la impresora, archivos de controlador

La función AddPrinterDriver busca los archivos del controlador en una ubicación específica en el cliente de Windows 95. Los archivos del controlador de impresora se deben copiar en esta ubicación. La ruta de acceso para los archivos del controlador de impresora es proporcionada por la función GetPrinterDriverDirectory . Pasar el valor del puntero NULL para el parámetro pName de esta función hace que devolver la carpeta del controlador de impresora local donde espera encontrar los archivos del controlador AddPrinterDriver .

Paso 5: Busque los archivos de controlador de impresora en el servidor

Por lo general, la ubicación de archivos de controlador de impresora en un servidor de impresión se puede encontrar una llamada a la función GetPrinterDriverDirectory y pasando el nombre del servidor en el parámetro pName. Por desgracia, en los clientes Windows 95, la parte remota o servidor de esta función no está implementada. El parámetro pName siempre se debe pasar un valor de puntero nulo y siempre devuelve a la impresora local directorio del controlador. Debido a la función GetPrinterDriverDirectory no puede devolver la ruta de acceso de red a las carpetas de driver del servidor, la aplicación debe crear su propia ruta de acceso de red.

En Microsoft Windows NT y los servidores de impresión de Windows 2000, se comparten los archivos del controlador de impresora en un árbol de directorios en el recurso compartido print$. Este recurso compartido es visible, por lo que no aparece durante la actividad de examinar la red del usuario. Los archivos del controlador de impresora de Windows 95 se encuentran en este recurso compartido en la carpeta denominada Win40 para el entorno de Windows 4.0. Los archivos del controlador se encuentran en la subcarpeta denominada 0 (cero). Cero es la revisión de arquitectura de controlador controladores de impresora de Windows 95.

Para los clientes basados en Windows 95, es la ruta de acceso de red a los archivos del controlador de impresora en el servidor de la \\<server></server>forma de \print$\win40\0, donde <server></server> es un marcador de posición para el nombre del servidor de impresión.

Paso 6: Copiar los archivos del controlador de impresora

Todos los archivos que son utilizados por la instalación de un controlador de impresora se enumeran en la estructura DRIVER_INFO_3 que obtuvo en el paso 2. Para copiar los archivos del controlador desde el servidor en la carpeta de controladores de impresora de cliente Windows 95 local, simplemente extraer los nombres de archivo para los archivos del controlador de todos los campos de la cadena correspondiente en DRIVER_INFO_3.

Para cada nombre de archivo que se extrae, forman una ruta de origen de red UNC completa al archivo mediante el uso de la ruta de acceso de red que determinó en el paso 5. Con el mismo nombre de archivo, forman una ruta de acceso de destino local utilizando el nombre de archivo y la carpeta de controladores de impresora local que obtuvo en el paso 4.

Para los clientes de Windows 95, la estructura que se devuelve desde el servidor de impresión contiene sólo los nombres de archivo. Sin embargo, en otros sistemas operativos de cliente puede buscar rutas de acceso completas en los campos de nombre de archivo de controlador. Estas rutas de acceso deben eliminarse de los nombres de archivo antes de formulario el origen y las rutas de destino.

Tenga en cuenta que el miembro pDependentFiles de DRIVER_INFO_3 puede mostrar varios nombres de archivo, separe cada cadena de nombre de archivo con un terminador de cero (NULL). El final de la lista de archivos de este miembro se indica mediante un doble terminador NULL.

Utilice la función de Win32 CopyFile para copiar cada archivo del controlador desde el servidor en el equipo local.

Control de errores debe basarse en este proceso. Ejemplos de algunos casos de error que se deben manipular son los siguientes:
  • La ruta de acceso de red de origen puede no estar disponible.
  • El archivo de origen no exista, aunque aparece en la información del controlador.
  • Puede que ya exista el nombre del archivo local.
Una instancia anterior de un archivo de controlador de impresora en el equipo local es un caso que merece especial atención. Existen tres opciones para controlar este caso:
  • No la copia de archivos y la instalación del controlador.
  • Intenta sobrescribir el archivo.
  • Continuar copiar archivos y utilizar el archivo que ya está instalado en lugar del archivo que se encuentra en el servidor.
Tenga en cuenta que esto es un problema diferente que en el caso de la instalación de un controlador de impresora duplicados, que se ha explicado en el paso 3.

En muchos casos, un archivo del mismo nombre de hecho puede ser el mismo archivo que se puede compartir entre las instalaciones de controlador de impresora. Muchos controladores de impresora que se suministran con el sistema operativo compartan un archivo de controlador común. UniDrv.dll y Pscript.dll son ejemplos de tales archivos de controlador. Como alternativa, un archivo de controlador del mismo nombre puede ser un archivo legítimo conflictos de nomenclatura.

Un método para resolver este conflicto consiste en utilizar el archivo de controlador que ya existe en el sistema. Este enfoque garantiza que sólo la nueva instalación de la impresora y no la instalación existente de la impresora se degrada debido a la incompatibilidad de archivos de controlador.

Paso 7: Cambiar la información de controlador de impresora local

Si es necesario, realizar cambios en la información del controlador para esta instalación en el cliente de Windows 95. En la mayoría de los casos, la información que se obtiene del servidor de impresión debe ser suficiente.

Algunas cosas que pueden ser modificados para la instalación local incluyen el nombre de la instalación del controlador y el tipo de datos de forma predeterminada.

Tenga en cuenta también que los nombres de archivo en la estructura de DRIVER_INFO_3 pueden tener información de ruta de acceso completa en los clientes que no sean de Windows 95. Estas rutas de acceso completas deberán eliminarse de los nombres de archivo de la información del controlador antes de llamar a la función AddPrinterDriver .

Paso 8: Instalar al controlador de impresora

Después el controlador de archivos se han copiado en la carpeta del controlador de impresora local y la correspondiente DRIVER_INFO_3 el búfer está listo, llame a AddPrinterDriver para instalar el controlador de impresora. Una llamada correcta al AddPrinterDriver instala una instalación de controlador de impresora que se puede hacer referencia por el miembro pName de la estructura DRIVER_INFO_3 . Si se produce un error en la función AddPrinterDriver , llame a la función GetLastError para intentar diagnosticar la causa. Algunas causas comunes de fracaso de la función son nombres de la instalación de controladores duplicados o que faltan componentes que se hace referencia en el búfer de DRIVER_INFO_3 .


Mediante la instalación del controlador de impresora

Para instalar a una impresora con este controlador de impresora, utilice la cadena de nombre (nombreDeProveedor) de instalación de controlador de impresora de la estructura de DRIVER_INFO_3 entre el controlador de impresora que se utilizará para la nueva impresora. Especifique el nombre de instalación del controlador de impresora en el miembro de la estructura PRINTER_INFO_2pDriverName cuando se llama a AddPrinter.

Por último, en este documento se asume que el código del programa se ejecutará sólo en clientes Windows 95. Esta suposición se realiza debido a que es la plataforma en que Point and Print requiere la descarga de controladores de impresora independiente. El proceso puede utilizarse en clientes de Windows NT, si se consideran las diferencias en la plataforma de cliente. Algunas de estas diferencias son las rutas de acceso del nombre de archivo completo en la estructura de DRIVER_INFO_3 , una gran variedad de entornos de tipos de microprocesador, uso apropiado de los niveles de estructura diferente y la ubicación de archivos del controlador en el recurso compartido de controlador de impresora del servidor. Sin embargo, agregar controladores de impresora a un Windows NT o Windows 2000 no es necesario el cliente de esta manera. Las conexiones de impresora de NT se deben utilizar en estos clientes, ya que las conexiones de impresora de NT proporcionan un medio superior de la impresora y la administración de trabajo de impresión y pueden agregarse fácilmente a un cliente con una sola llamada a AddPrinterConnection mediante el uso de la ruta de acceso UNC a la impresora que se encuentra en el paso 1.

Referencias

Para obtener más información, consulte los temas siguientes en el SDK de la plataforma:
DRIVER_INFO_3
http://msdn.Microsoft.com/en-us/library/ms535710 (en inglés) .aspx

GetPrinterDriver
http://msdn.Microsoft.com/en-us/library/ms535750 (en inglés) .aspx

GetPrinterDriverDirectory
http://msdn.Microsoft.com/en-us/library/ms535642 (en inglés) .aspx

CopyFile
http://msdn.Microsoft.com/en-us/library/aa363851 (en inglés) .aspx

AddPrinterDriver
http://msdn.Microsoft.com/en-us/library/ms535512 (en inglés) .aspx

PRINTER_INFO_2
http://msdn.Microsoft.com/en-us/library/bb401711.aspx

AddPrinter
http://msdn.Microsoft.com/en-us/library/ms535500 (en inglés) .aspx

AddPrinterConnection
http://msdn.Microsoft.com/en-us/library/ms535726 (en inglés) .aspx

OpenPrinter
http://msdn.Microsoft.com/en-us/library/aa907473.aspx

EnumPrinters
http://msdn.Microsoft.com/en-us/library/dd162692 (en inglés) .aspx

EnumPrinterDrivers
http://msdn.Microsoft.com/en-us/library/ms535713 (en inglés) .aspx

GetLastError
http://msdn.Microsoft.com/en-us/library/aa911366.aspx

Códigos de Error de Win32
http://msdn.Microsoft.com/en-us/library/cc231199.aspx

Propiedades

Id. de artículo: 203604 - Última revisión: domingo, 21 de abril de 2013 - Versión: 6.0
La información de este artículo se refiere a:
  • Microsoft Win32 Application Programming Interface sobre las siguientes plataformas
    • Microsoft Windows 98 Standard Edition
    • Microsoft Windows Millennium Edition
Palabras clave: 
kbdswgdi2003swept kbfile kbgdi kbhowto kbprint kbspooler kbmt KB203604 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 203604

Enviar comentarios

 

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