estructura DRIVER_UPGRADE_INFO_2 (winddiui.h)
La estructura DRIVER_UPGRADE_INFO_2 se usa como entrada para la función DrvUpgradePrinter de una interfaz de impresora DLL.
Sintaxis
typedef struct _DRIVER_UPGRADE_INFO_2 {
LPTSTR pPrinterName;
LPTSTR pOldDriverDirectory;
DWORD cVersion;
LPTSTR pName;
LPTSTR pEnvironment;
LPTSTR pDriverPath;
LPTSTR pDataFile;
LPTSTR pConfigFile;
LPTSTR pHelpFile;
LPTSTR pDependentFiles;
LPTSTR pMonitorName;
LPTSTR pDefaultDataType;
LPTSTR pszzPreviousNames;
} DRIVER_UPGRADE_INFO_2, *PDRIVER_UPGRADE_INFO_2;
Miembros
pPrinterName
Puntero a una cadena terminada en NULL que especifica el nombre de la impresora. Para obtener más información, vea la sección Comentarios.
pOldDriverDirectory
Puntero a una cadena terminada en NULL que especifica el directorio local en el que se pueden encontrar los archivos antiguos del controlador de impresora.
cVersion
Especifica la versión del sistema operativo para la que se escribió el controlador.
Valor | Sistema operativo |
---|---|
0 | Windows 95/98/Me |
1 | Windows NT 3.1 a Windows NT 3.51 |
2 | Windows NT 4.0 |
3 | Windows 2000 y versiones posteriores |
pName
Puntero a una cadena terminada en NULL que especifica el nombre del controlador (por ejemplo, "QMS 810"). Para obtener más información, vea la sección Comentarios.
pEnvironment
Puntero a una cadena terminada en NULL que especifica el entorno para el que se escribió el controlador (por ejemplo, "Windows NT x86" o "Windows Itanium").
pDriverPath
Puntero a una cadena terminada en NULL que especifica un nombre de archivo o una ruta de acceso completa y un nombre de archivo para el archivo que contiene el controlador de dispositivo (por ejemplo, "pscript.dll").
pDataFile
Puntero a una cadena terminada en NULL que especifica un nombre de archivo o una ruta de acceso completa y un nombre de archivo para el archivo que contiene datos del controlador (por ejemplo, "qms810.ppd").
pConfigFile
Puntero a una cadena terminada en NULL que especifica un nombre de archivo o una ruta de acceso completa y un nombre de archivo para la biblioteca de vínculos dinámicos de configuración del controlador de dispositivo (por ejemplo, "pscrptui.dll").
pHelpFile
Puntero a una cadena terminada en null que especifica un nombre de archivo o una ruta de acceso completa y un nombre de archivo para el archivo de ayuda del controlador de dispositivo.
pDependentFiles
Puntero a una cadena terminada en NULL que especifica los archivos de los que depende el controlador. Cada nombre de archivo de la cadena también se termina con un carácter nulo (por ejemplo, "pscript.dll\0qms810.ppd\0pscrptui.dll\0pscrptui.hlp\0pstest.txt\0\0").
pMonitorName
Puntero a una cadena terminada en NULL que especifica un monitor de idioma (por ejemplo, "monitor PJL"). Este miembro puede ser NULL y debe especificarse como no NULL solo para impresoras capaces de comunicación bidireccional.
pDefaultDataType
Puntero a una cadena terminada en NULL que especifica el tipo de datos predeterminado del trabajo de impresión (por ejemplo, "EMF").
pszzPreviousNames
Puntero a una cadena terminada en NULL que especifica los nombres de controladores de impresora anteriores que sean compatibles con este controlador (por ejemplo, "OldName1\0OldName2\0\0").
Comentarios
Cuando se llama a DrvUpgradePrinter con su parámetro pDriverUpgradeInfo que apunta a una estructura de DRIVER_UPGRADE_INFO_2, el miembro pPrinterName apunta a una cadena que contiene el nombre de la impresora que se va a actualizar. El miembro pName apunta a una cadena que contiene el nombre del controlador de impresora que se va a actualizar, que no es necesariamente el controlador de la impresora cuyo nombre apunta el miembro pPrinterName .
Para ver cómo puede ocurrir esto, supongamos que un equipo está conectado a dos impresoras, una cuyo controlador se denomina "Acme Plotter" y el otro cuyo controlador se denomina "Acme RasterMaster". Supongamos también que ambos controladores comparten un archivo de controlador común, plotui.dll. Cuando se actualiza el controlador "Acme Plotter" mediante una llamada a la función AddPrinterDriverEx (descrita en la documentación de Microsoft Windows SDK), se llama a DrvUpgradePrinter para ambas impresoras, ya que ambos controladores usan archivos afectados por la actualización. En ambas llamadas, el miembro pName apunta a "Acme Plotter", el nombre del controlador de impresora usado en la llamada a AddPrinterDriverEx. Sin embargo, la cadena a la que apunta el miembro pPrinterName es diferente en ambas llamadas a DrvUpgradePrinter. En cada llamada, pPrinterName apunta al nombre de la impresora que se está actualizando.
Requisitos
Requisito | Valor |
---|---|
Header | winddiui.h (incluya Winddiui.h) |