Condividi tramite


Controllo CRC durante un'installazione

Un controllo di ridondanza ciclico dei file è disponibile con Windows Installer. Il controllo CRC è un meccanismo di controllo degli errori, simile a un checksum, che consente a un'applicazione di determinare se le informazioni in un file sono state modificate. Al termine della copia di un file, il programma di installazione di Windows Installer ottiene un valore CRC dai file di origine e di destinazione. Il programma di installazione controlla l'originale CRC stampato nel file e lo confronta con il CRC calcolato dalla copia. Il controllo CRC ha esito negativo se il valore CRC originale non è null ed è diverso dal CRC calcolato nella copia. Se il CRC originale è Null, non si verifica alcun controllo.

Windows Installer esegue un controllo CRC su un file nei casi seguenti:

  • Se la proprietà MSICHECKCRCS è impostata e msidbFileAttributesChecksum è inclusa nel campo Attributi del record del file nella tabella File. Il programma di installazione esegue il controllo CRC una volta dopo l'installazione, la duplicazione o lo spostamento del file.
  • Se la proprietà MSICHECKCRCS è impostata e msidbFileAttributesChecksum è inclusa nel campo Attributi del record del file nella tabella File, il programma di installazione esegue un controllo CRC dopo aver patchato il file.
  • Se msidbFileAttributesChecksum è incluso nel campo Attributi del record del file nella tabella File, il programma di installazione esegue un controllo CRC prima dell'associazione delle immagini.

Se il controllo ha esito negativo prima dell'associazione di un'immagine, il programma di installazione segnala i due errori seguenti nel file di log e continua l'installazione senza associazione del file.

Codice Message
2941 Impossibile calcolare il CRC per il file [2].
2942 L'azione BindImage non è stata eseguita nel file [2].

 

Se il controllo ha esito negativo dopo che è stato copiato, duplicato o sottoposto a patch un file non compresso, il programma di installazione segnala l'errore seguente. Questo errore viene segnalato anche se il controllo ha esito negativo dopo la copia di un file compresso. Se il file ha l'attributo msidbFileAttributesVital , il file è considerato fondamentale per l'installazione e l'utente ottiene l'opzione per riprovare o annullare l'installazione. Se il file è contrassegnato come nonvitale nella colonna Attributi della tabella File, l'utente può ignorare l'errore e continuare, riprovare o annullare l'installazione.

Codice Message
1331 Impossibile copiare correttamente il file [2]: errore CRC.

 

Si noti che vengono spostati solo i file non compressi. Se il controllo ha esito negativo dopo lo spostamento di un file non compresso, il programma di installazione visualizza l'errore seguente. Se il file ha l'attributo msidbFileAttributesVital , il file viene considerato fondamentale per l'installazione e l'installazione ha esito negativo. Se il file è contrassegnato come nonvitale nella colonna Attributi della tabella File, l'utente ottiene l'opzione per annullare o ignorare l'errore e continuare l'installazione.

Codice Message
1332 Impossibile spostare correttamente il file [2] : errore CRC.

 

Se il controllo ha esito negativo dopo la patch di un file non compresso, il programma di installazione visualizza l'errore seguente. Se il file ha l'attributo msidbFileAttributesVital , il file viene considerato fondamentale per l'installazione e l'installazione ha esito negativo. Se il file è contrassegnato come nonvitale nella colonna Attributi della tabella File, l'utente ottiene l'opzione per annullare o ignorare l'errore e continuare l'installazione.

Codice Message
1333 Impossibile applicare correttamente patch [2] file: errore CRC.