Al momento sei offline in attesa che la connessione Internet venga ristabilita

Un assembly nella global assembly cache o SxS mancante dopo aver eseguito un aggiornamento importante utilizzando un pacchetto di Windows Installer

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

905238
Sintomi
Dopo aver eseguito un aggiornamento importante utilizzando un pacchetto di Microsoft Windows Installer, un assembly nella global assembly cache o SxS (side-by-side per cartella, \Windows\WinSxS\) è manca.
Cause
Questo problema si verifica quando l'azione Windows Installer RemoveExistingProducts è sequenziale in una posizione impedisce appropriato riferimento la conteggio dell'assembly e che causa la rimozione imprevista di assembly. L'azione RemoveExistingProducts è sequenziale nella tabella InstallExecuteSequence il pacchetto di Windows Installer. Questo problema si verifica quando l'azione RemoveExistingProducts è sequenziale in modo che il prodotto originale venga rimosso prima di installazione il nuovo prodotto.

Quando un assembly viene inserito nella global assembly cache, l'assembly viene rinominato. Windows Installer Impossibile determinare il il nome corretto dell'assembly. Windows Installer fare affidamento sui Microsoft .NET Framework per gestire il nome.

Quando si esegue un aggiornamento importante mediante un Windows Installer package, verrà chiamato in .NET Framework per verificare se l'assembly è già installato nella global assembly cache. Se .NET Framework restituisce Sì, il componente che contiene l'assembly nel pacchetto di Windows Installer di aggiornamento principale non è consentito per l'installazione. Successivamente, l'azione RemoveExistingProducts viene eseguito e Disinstalla l'assembly esistente nella global assembly cache. L'azione RemoveExistingProducts viene perché il nuovo prodotto non è stato registrato come client dell'assembly e altri client di non esiste. Perché il componente di aggiornamento principale non è stato consentito per l'installazione, l'assembly non viene reinstallato quando l'aggiornamento principale installa i componenti.

Se si resequence l'azione RemoveExistingProducts per pianificare la disinstallazione del prodotto precedente dopo aver installato il nuovo prodotto, l'assembly non verrà rimosso. L'assembly non verrà rimosso perché l'assembly ora dispone di un ulteriore fare riferimento a conteggio dal nuovo prodotto. Di conseguenza, anche se l'installazione dell'assembly viene ignorato per l'aggiornamento principale, l'assembly resta perché un altro client fa riferimento all'assembly. Il nuovo prodotto e il prodotto originale fare riferimento all'assembly.

Nota Quando un assembly non si trova nella global assembly cache, non rinominare si verifica. Applicano le regole di controllo delle versioni di file Windows Installer standard e il componente di aggiornamento principale consentito per l'installazione.
Workaround
Per ovviare al problema, utilizzare uno dei metodi descritti di seguito.

Metodo 1

Aumentare l'attributo AssemblyVersion dell'assembly che si sta tentando di installare per creare un'installazione side-by-side nella global assembly cache.

Metodo 2

Utilizzare uno strumento di creazione tabella verrà, per modificare la sequenza di azione RemoveExistingProducts nel InstallExecuteSequence tabella dopo l'azione InstallFinalize. Utilizzare il Orca.exe editor della tabella di database per la creazione o la modifica verrà ad esempio i pacchetti.
Informazioni
È possibile creare un pacchetto di Windows Installer in un progetto di installazione e distribuzione in Microsoft Visual Studio. NET. Quando l'azione RemoveExistingProducts è sequenziale in questo pacchetto Windows Installer, il percorso predefinito per il RemoveExistingProducts azione nella tabella InstallExecuteSequence causa il problema descritto nella sezione "Sintomi".

Per ulteriori informazioni, visitare i seguenti siti Web MSDN (informazioni in lingua inglese):
MSI

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 905238 - Ultima revisione: 09/11/2008 15:45:19 - Revisione: 2.0

  • Microsoft Windows Installer 3.1
  • Microsoft Windows Installer 3.0
  • Microsoft Windows Installer 2.0
  • kbmt kbwindowsinstaller kbinfo kbtshoot kbprb KB905238 KbMtit
Feedback