ICE43

ICE43 valida que los accesos directos que no hacen referencia a una característica como destino (accesos directos no anunciados) están en componentes que tienen una entrada del Registro de HKCU como ruta de acceso de clave.

Resultado

ICE43 publica un mensaje de error si un acceso directo no anunciado está en un componente que no tiene una entrada del Registro de HKCU como ruta de acceso de clave.

Ejemplo

ICE43 notificaría los errores siguientes en el ejemplo mostrado.

Error de ICE43 Descripción
El componente Component1 tiene accesos directos no anunciados. Debe usar una clave del Registro en HKCU como valor de KeyPath, no un archivo. La columna de atributos de Component1 es 0, lo que significa que el componente usa un archivo como valor de KeyPath. Esto hace que los accesos directos no anunciados en este componente SOLO se instalen para el primer usuario del equipo. Los usuarios que instalan el componente más adelante no ven los accesos directos porque el componente aparece en el instalador como ya existente en el equipo. Para corregir este error, establezca el bit RegistryKeyPath de los atributos para cambiar el componente por una entrada del Registro y, luego, cambie el valor de KeyPath por una entrada válida de la tabla Registry.
El componente Component2 tiene accesos directos no anunciados. Debe usar una clave del Registro en HKCU como valor de KeyPath. El valor de KeyPath es actualmente null. La columna Attributes se establece para usar el Registro, pero KeyPath es null. El valor de KeyPath debe hacer referencia a una entrada de la tabla Registry. Para corregir este error, cambie el valor de KeyPath por una entrada válida de la tabla Registry.
El componente Component3 tiene accesos directos no anunciados. Su clave del Registro de KeyPath debe estar en HKCU. La columna Attributes se establece para usar el Registro, pero la entrada del Registro a la que se hace referencia no está en HKCU. Para corregir este error, cambie a otra entrada del Registro como KeyPath para este componente o cambie el valor raíz de la entrada del Registro por -1 o 1.
La entrada del Registro KeyPath del componente Component4 no existe. La entrada del Registro a la que se hace referencia en la columna KeyPath del componente no está en la tabla Registry. Para corregir este error, cree una entrada.
La entrada del Registro Reg5 está establecida como KeyPath para el componente Component5, pero esa entrada del Registro no pertenece a Component5. Hay una entrada del Registro a la que se hace referencia en la columna KeyPath del componente que se encuentra en el árbol HKCU, pero la columna Component_ del Registro no hace referencia al mismo componente que lo enumera como KeyPath. Esto significa que la entrada del Registro usada como KeyPath del componente solo se crea si se instaló algún otro componente. Para corregir este error, cambie el valor de KeyPath para que haga referencia a una entrada del Registro que pertenezca al componente o cambie la entrada del Registro para que pertenezca al componente que la usa como KeyPath.

 

Tabla Component (parcial)

Componente Atributos KeyPath
Component1 0 Archivo1
Component2 4  
Component3 4 Reg3
Component4 4 Reg4
Component5 4 Reg5

 

Tabla Registry (parcial)

Registro Root Value Component_
Reg3 2 Component3
Reg5 0 Component4

 

Referencia de ICE