Función MsiSourceListAddMediaDiskW (msi.h)

La función MsiSourceListAddMediaDisk agrega o actualiza un disco del origen multimedia de un producto o revisión registrados. Si el disco especificado ya existe, se actualiza con los nuevos valores. Si el disco especificado no existe, se crea una nueva entrada de disco con los nuevos valores.

Sintaxis

UINT MsiSourceListAddMediaDiskW(
  [in]           LPCWSTR           szProductCodeOrPatchCode,
  [in, optional] LPCWSTR           szUserSid,
  [in]           MSIINSTALLCONTEXT dwContext,
  [in]           DWORD             dwOptions,
  [in]           DWORD             dwDiskId,
  [in]           LPCWSTR           szVolumeLabel,
  [in, optional] LPCWSTR           szDiskPrompt
);

Parámetros

[in] szProductCodeOrPatchCode

Guid de ProductCode o revisión del producto o revisión. Use una cadena terminada en null. Si la cadena tiene más de 39 caracteres, la función produce un error y devuelve ERROR_INVALID_PARAMETER. Este parámetro no puede ser NULL.

[in, optional] szUserSid

Este parámetro puede ser un SID de cadena que especifica la cuenta de usuario que contiene el producto o la revisión. El SID no se valida ni resuelve. Un SID incorrecto puede devolver ERROR_UNKNOWN_PRODUCT o ERROR_UNKNOWN_PATCH.

Tipo de SID Significado
NULL
NULL indica el usuario que ha iniciado sesión actualmente. Al hacer referencia a la cuenta de usuario actual, szUserSID puede ser NULL y dwContext puede ser MSIINSTALLCONTEXT_USERMANAGED o MSIINSTALLCONTEXT_USERUNMANAGED.
SID de usuario
Especifica la enumeración de un usuario determinado en el sistema. Un ejemplo de SID de usuario es "S-1-3-64-2415071341-1358098788-3127455600-2561".
 
Nota La cadena de SID especial s-1-5-18 (sistema) no se puede usar para enumerar productos o revisiones instalados según la máquina. Al establecer el valor del SID en s-1-5-18, se devuelve ERROR_INVALID_PARAMETER. Cuando dwContext se establece en solo MSIINSTALLCONTEXT_MACHINE, szUserSid debe ser NULL.
 
Nota No se debe usar la cadena de SID especial s-1-1-0 (todos los usuarios). Se produce un error al establecer el valor del SID en s-1-1-0 y devuelve ERROR_INVALID_PARAM .
 

[in] dwContext

Este parámetro especifica el contexto de la instancia de producto o revisión. Este parámetro puede contener uno de los siguientes valores.

Tipo de contexto Significado
MSIINSTALLCONTEXT_USERMANAGED
La instancia de producto o revisión existe en el contexto administrado por usuario.
MSIINSTALLCONTEXT_USERUNMANAGED
La instancia de producto o revisión existe en el contexto no administrado por usuario.
MSIINSTALLCONTEXT_MACHINE
La instancia de producto o revisión existe en el contexto por máquina.

[in] dwOptions

El valor dwOptions especifica el significado de szProductCodeOrPatchCode.

Marca Significado
MSICODE_PRODUCT
szProductCodeOrPatchCode es un GUID de código de producto.
MSICODE_PATCH
szProductCodeOrPatchCode es un GUID de código de revisión.

[in] dwDiskId

Este parámetro proporciona el id. del disco que se va a agregar o actualizar.

[in] szVolumeLabel

szVolumeLabel proporciona la etiqueta del disco que se va a agregar o actualizar. Una actualización sobrescribe la etiqueta de volumen existente en el registro. Para cambiar solo el símbolo del sistema del disco, obtenga la etiqueta de volumen existente del Registro y proporciónela en esta llamada junto con el nuevo símbolo del sistema del disco. Pasar una cadena NULL o vacía para szVolumeLabel registra una cadena vacía (0 bytes de longitud) como etiqueta de volumen.

[in, optional] szDiskPrompt

En la entrada a MsiSourceListAddMediaDisk, szDiskPrompt proporciona el símbolo del sistema del disco que se va a agregar o actualizar. Una actualización sobrescribe el símbolo del sistema del disco registrado.
Para cambiar solo la etiqueta de volumen, obtenga el símbolo del sistema de disco existente que está registrado y proporciónelo al llamar a MsiSourceListAddMediaDisk junto con la nueva etiqueta de volumen. Pasar NULL o una cadena vacía registra una cadena vacía (0 bytes de longitud) como símbolo del sistema del disco.

Valor devuelto

La función MsiSourceListAddMediaDisk devuelve los valores siguientes.

Valor Significado
ERROR_ACCESS_DENIED
El usuario no tiene la capacidad de leer el origen multimedia especificado ni el producto o la revisión especificados. Esto no indica si se encontró un origen multimedia, un producto o una revisión.
ERROR_BAD_CONFIGURATION
Los datos de configuración están dañados.
ERROR_INSTALL_SERVICE_FAILURE
No se puede acceder al servicio Windows Installer.
ERROR_INVALID_PARAMETER
Se pasó un parámetro no válido a la función.
ERROR_SUCCESS
El valor se reordenó correctamente.
ERROR_UNKNOWN_PATCH
No se encontró la revisión.
ERROR_UNKNOWN_PRODUCT
No se encontró el producto.
ERROR_FUNCTION_FAILED
Error interno inesperado.

Comentarios

Los administradores pueden modificar la instalación de una instancia de producto o revisión que existe en el contexto de la máquina o en su propio contexto por usuario (administrado o no administrado). Pueden modificar la instalación de una instancia de producto o revisión que existe en el contexto administrado por usuario de cualquier usuario. Los administradores no pueden modificar la instalación de otro usuario de una instancia de producto o revisión que exista en ese contexto por usuario no administrado del otro usuario.

Los usuarios que no son administradores no pueden modificar la instalación de una instancia de producto o revisión que existe en el contexto por usuario de otro usuario (administrado o no administrado). Pueden modificar la instalación de una instancia de producto o revisión que existe en su propio contexto no administrado por usuario. Pueden modificar la instalación de un producto o una instancia de revisión en el contexto de la máquina o su propio contexto administrado por usuario solo si están habilitados para buscar un producto o origen de revisión. Los usuarios se pueden habilitar para buscar orígenes estableciendo la directiva . Para obtener más información, vea DisableBrowse, AllowLockdownBrowse, AllowLockDownMedia y AlwaysInstallElevated .

Nota

El encabezado msi.h define MsiSourceListAddMediaDisk como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Installer 5.0 en Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 en Windows Server 2008 o Windows Vista. Windows Installer 3.0, o posterior, en Windows Server 2003 o Windows XP. Consulte Windows Installer para obtener información sobre el Service Pack mínimo de Windows que requiere una versión de Windows Installer.
Plataforma de destino Windows
Encabezado msi.h
Library Msi.lib
Archivo DLL Msi.dll

Consulte también

No se admite en Windows Installer 2.0 ni en versiones anteriores

ProductCode