Compartir a través de


Función UploadPrinterDriverPackage

Carga un controlador de impresora en el almacén de controladores del servidor de impresión para que se pueda instalar mediante una llamada a InstallPrinterDriverFromPackage.

Sintaxis

HRESULT UploadPrinterDriverPackage(
  _In_    LPCTSTR pszServer,
  _In_    LPCTSTR pszInfPath,
  _In_    LPCTSTR pszEnvironment,
  _In_    DWORD   dwFlags,
  _In_    HWND    hwnd,
  _Out_   LPTSTR  pszDestInfPath,
  _Inout_ PULONG  pcchDestInfPath
);

Parámetros

pszServer [in]

Puntero a una cadena constante terminada en null que especifica el nombre del servidor de impresión. Use NULL si el servidor es el equipo local.

pszInfPath [in]

Puntero a una cadena constante terminada en null que especifica la ruta de acceso de origen al archivo .inf del controlador.

pszEnvironment [in]

Puntero a una cadena constante terminada en null que especifica la arquitectura del procesador del servidor (por ejemplo, Windows NT x86). Puede ser NULL.

dwFlags [in]

Puede ser cualquiera de los valores siguientes:

Valor Significado
UPDP_SILENT_UPLOAD
La interfaz de usuario no se mostrará durante la carga.
UPDP_UPLOAD_ALWAYS
Los archivos se cargarán incluso si el paquete ya está en el almacén de controladores del servidor.
UPDP_CHECK_DRIVERSTORE
El almacén de controladores del servidor se comprobará antes de cargar para ver si el paquete ya está allí. Esta configuración se omite si se establece UPDP_UPLOAD_ALWAYS.

hwnd [in]

Identificador de la interfaz de usuario de copia.

pszDestInfPath [out]

Puntero a la ruta de acceso de destino, en el almacén de controladores, al que se copió el archivo .inf del controlador.

pcchDestInfPath [in, out]

En la entrada, especifica el tamaño, en caracteres, del búfer pszDestInfPath . En la salida, recibe el tamaño, en caracteres, de la cadena de ruta de acceso, incluido el carácter nulo de terminación.

Valor devuelto

Si la operación se realiza correctamente, el valor devuelto es S_OK; de lo contrario, HRESULT contendrá un código de error.

Para obtener más información sobre los códigos de error COM, vea Control de errores.

Comentarios

Nota

Se trata de una función de bloqueo o sincrónica que podría no devolverse inmediatamente. La rapidez con la que devuelve esta función depende de factores en tiempo de ejecución, como el estado de red, la configuración del servidor de impresión y los factores de implementación del controlador de impresora que son difíciles de predecir al escribir una aplicación. Llamar a esta función desde un subproceso que administra la interacción con la interfaz de usuario podría hacer que la aplicación parezca que no responde.

El almacén de controladores suele ser %windir%\inf o %windir%\System32\DriverStore\FileRepository.

Solo se puede cargar un paquete a la vez. Si un paquete depende de otros usuarios, debe cargarse por separado.

Solo se pueden cargar paquetes de controladores firmados.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado
Winspool.h (incluye Windows.h)
Biblioteca
Winspool.lib
Archivo DLL
Spoolss.dll
Nombres Unicode y ANSI
UploadPrinterDriverPackageW (Unicode) y UploadPrinterDriverPackageA (ANSI)

Consulte también

Impresión

Funciones de la API del administrador de trabajos de impresión