SDK DirectX (giugno 2010) Problemi di installazione: codice di errore S1023


178

Mi sembra di avere dei problemi con l'installazione dell'SDK di DirectX. Tutto sembra andare bene durante l'installazione, ma alla fine ricevo il messaggio:

Installazione non riuscita. Si sono verificati errori durante l'installazione di pacchetti ridistribuibili. Chiudi tutti i programmi aperti e prova a eseguire nuovamente l'installazione. Se i problemi persistono, contattare il supporto per sviluppatori DirectX.

Codice errore: S1023

Bene, ho provato a chiudere tutti i programmi aperti e a installarli di nuovo, ma ho lo stesso errore. Cos'è il codice di errore S1023? Ho provato a cercare su Google , ma ho trovato molte risposte diverse su come gestirlo e non sono sicuro di cosa fare.

Ho provato a cercare nei file di registro C:\Windows\Logs. Ci sono 2 file di registro DirectX.loge DirectX_SDK.log. Non vedo alcun segno evidente di "errore" o "fallimento" di alcun tipo.

In effetti, l'ultima riga in DirectX.log è:

11/04/10 18:36:27: dsetup32: Installazione terminata con valore 0 = Installazione riuscita

Qualcuno potrebbe aiutare per favore? Sto eseguendo Vista (x64).


credo che nella maggior parte dei casi il motivo di questo errore sia che hai installato un programma (ad esempio un gioco) che ha portato la versione ridistribuibile in alto rispetto alla versione ridistribuibile di SDK, causando il fallimento dell'installazione. non sono sicuro che sia importante che l'installazione abbia esito negativo o meno.
Max DeLiso,

Non c'è abbastanza rappresentante per rispondere ma dato che questo non è menzionato da nessuna parte qui: assicurati di fare clic con il tasto destro e selezionare "Esegui come amministratore" sul programma di installazione.
Harald Maassen,

2
Sembra che nessuno lo abbia menzionato, ma puoi semplicemente ignorare il messaggio. SDK è installato e set env vars (Win10, SDK giugno 2010)
FrozenKiwi

Risposte:


271

Ho avuto lo stesso problema e per me è stato perché il redist vc2010 x86 era troppo recente.

Controllare la cartella temporanea (C: \ Users \\ AppData \ Local \ Temp) per il file più recente denominato

Setup ridistribuibile di Microsoft Visual C ++ 2010 x64_20110608_xxx.html ##

e controlla se hai il seguente errore

Blocker di installazione:

Nel computer è stata rilevata una versione più recente di Microsoft Visual C ++ 2010 ridistribuibile.

Risultato finale: installazione non riuscita con codice di errore: (0x000013EC), "È stato colpito un StopBlock o un sistema> Requisito non è stato soddisfatto." (Tempo trascorso: 0 00:00:00).

quindi vai su Pannello di controllo> Programmi e funzionalità e disinstalla tutto

Microsoft Visual C ++ 2010 x86 / x64 ridistribuibile - 10.0. (Numero oltre 30319)

Dopo una corretta installazione di DXSDK, esegui semplicemente Windows Update e aggiornerà i ridistribuibili all'ultima versione.


5
Ho pensato di pubblicare un post e questo era il mio problema esatto, grazie per averlo condiviso. L'OP dovrebbe davvero contrassegnare questa come soluzione!
George,

3
Qualche idea sul perché nuovi ridistribuibili si scontrano con l'installazione? Posso reinstallarli dopo l'installazione? O causeranno problemi?
magnattico

7
Se si personalizza l'installazione, è possibile astenersi dall'installare il ridistribuibile. Pertanto, è possibile mantenere quello più recente durante l'installazione dell'SDK. In alternativa, puoi semplicemente disinstallarlo come suggerito e reinstallarlo dopo.
Fibericon,

3
Esistono rischi nell'eliminazione dei ridistribuibili?
Arthur Mamou-Mani,

4
@Fibericon FYI Sembra che non riesca a deselezionare l'opzione per installare il ridistribuibile DX. Proverò il contrario. Grazie per aver suggerito, però!
Vaillancourt,

83

Ho già avuto lo stesso problema due volte e la soluzione più semplice e concisa che ho trovato si trova qui (nei blog di MSDN -> Giochi per Windows e DirectX SDK). Tuttavia, nel caso in cui la pagina scenda, ecco il metodo:

  1. Rimuovere il pacchetto ridistribuibile Visual C ++ 2010 versione 10.0.40219 (Service Pack 1) dal sistema (sia x86 che x64 se applicabile). Questo può essere fatto facilmente tramite una riga di comando con diritti di amministratore:

    MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
    MsiExec.exe /passive /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}
    
  2. Installa DirectX SDK (giugno 2010)

  3. Reinstallare il pacchetto ridistribuibile Visual C ++ 2010 versione 10.0.40219 (Service Pack 1). Su un sistema x64, è necessario installare entrambe le versioni x86 e x64 del C ++ REDIST. Assicurati di installare la versione più recente disponibile , che a questo punto è la KB 2565063 con una correzione di sicurezza.

Nota: questo problema non riguarda la versione precedente dell'SDK DirectX che distribuisce il REDIST CRT VS 2005 / VS 2008 e non distribuisce il REDIST CRT VS 2010. Questo problema non influisce sul web di DirectX End-User Runtime o sul programma di installazione autonomo poiché tali pacchetti non distribuiscono alcuna versione di VC ++ CRT.

File Checksum Integrity Verifier : questo ovviamente presuppone che tu abbia effettivamente una copia non corrotta del pacchetto di installazione dell'SDK di DirectX. Il modo migliore per convalidarlo è farlo funzionare

fciv -sha1 DXSDK_Jun10.exe

e verifica di averlo

8fe98c00fde0f524760bb9021f438bd7d9304a69 dxsdk_jun10.exe

Ho già il link all'articolo nella mia risposta, @midspace
gregoltsov,

Grazie Gregorio. Il mio browser (IE) deve avermi dato dolore quel giorno, poiché non ricordo di aver visto alcun link (nessun testo colorato) nel tuo post. Uso Safari oggi e posso vederli tutti. : /
metà spazio il

2
Il solo numero 1 mi aiuta ... La tua risposta è: non prendere un oui oui
Jimmyt1988,

22

Ecco la risposta ufficiale di Microsoft: http://blogs.msdn.com/b/chuckw/archive/2011/12/09/known-issue-directx-sdk-june-2010-setup-and-the-s1023- error.aspx

Riepilogo se preferisci non fare clic:

  1. Rimuovere il pacchetto ridistribuibile Visual C ++ 2010 versione 10.0.40219 (Service Pack 1) dal sistema (sia x86 che x64 se applicabile). Questo può essere fatto facilmente tramite una riga di comando con diritti di amministratore:

    MsiExec.exe / passive / X {F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}

    MsiExec.exe / passive / X {1D8E6291-B0D5-35EC-8441-6616F567A0F7}

  2. Installa DirectX SDK (giugno 2010)

  3. Reinstallare il pacchetto ridistribuibile Visual C ++ 2010 versione 10.0.40219 (Service Pack 1). Su un sistema x64, è necessario installare entrambe le versioni x86 e x64 del C ++ REDIST. Assicurati di installare la versione più recente disponibile, che a questo punto è KB2565063 con una correzione di sicurezza.

Windows SDK: Windows SDK 7.1 presenta esattamente lo stesso problema riscontrato in KB 2717426 .


Questa è stata di gran lunga la soluzione più semplice. Adoro il modo in cui hai aggiunto i comandi Msiexec, mi hai salvato un sacco di seccature. Ho finito per rimuovere le versioni aggiornate e l'installazione è andata benissimo. Penserò di aggiungerli nuovamente una volta individuata l'app che li ha richiesti.
Alex Summers,

2

Trova Microsoft Visual C ++ 2010 x86 / x64 ridistribuibile - 10.0.xxxxx nel pannello di controllo dei programmi di aggiunta o rimozione se xxxxx> 30319 ripristinalo

Volevo solo dire che questo (ho anche svuotato la mia cartella temporanea, in Computer-> C: -> Proprietà-> Pulizia disco) ha fatto installare l'SDK di DirectX June 2010 senza errori, ho Vista32bit per tutto ciò che conta. Grazie signor Lyn! :)


1

Dopo aver disinstallato troppo sul mio computer Win7-64bit, sono rimasto bloccato anche qui. Non volevo reinstallare il sistema operativo e nessuno dei trucchi funzionanti si aspetta per questo hack del registro di seguito. La maggior parte di questo trucco ho trovato in una vecchia porta pchelpforum ma ho dovuto adattarlo alla mia installazione a 64 bit:

(Per una riparazione a 32 bit, probabilmente saltare il percorso del nodo Wow6432)

  1. Inizia regedit
  2. Vai a HKEY_LOCAL_MACHINE-> SOFTWARE-> Wow6432Node-> Microsoft-> ​​DirectX
  3. Se questa cartella DirectX non esiste, crearla.
  4. Se già qui, assicurati che sia vuoto.
  5. Ora fai clic destro nella finestra vuota a destra e aggiungi questi dati (probabilmente ci sarà almeno un valore di stringa predefinito situato qui, lascialo):

    New->Binary Value
    Name: InstalledVersion
    Type: REG_BINARY
    Data: 00 00 00 09 00 00 00 00
    
    New->DWORD (32-bit) Value
    Name: InstallMDX
    Type: REG_DWORD
    Data: 0x00000001
    
    New->String Value
    Name: SDKVersion
    Type: REG_SZ
    Data: 9.26.1590.0
    
    New->String Value
    Name: Version
    Type: REG_SZ
    Data: 4.09.00.0904
    
  6. Reinstallare utilizzando l'ultimo programma di installazione DXSDK. Anche l'opzione di runtime potrebbe funzionare ma non l'ho testata.

  7. Profitto!

La soluzione sul sito di Microsoft: answers.microsoft.com/en-us/windows/forum/...
Der_Meister

1

Trova Microsoft Visual C ++ 2010 x86 / x64 ridistribuibile - 10.0.xxxxx nel pannello di controllo dei programmi di aggiunta o rimozione se xxxxx> 30319 ripristinalo


0

Ho riscontrato anche questo problema. E sto correndo in XP SP3.

Il seguente sito Web http://www.docin.com/p-60410380.html# indicando la soluzione. Ma è cinese semplificato.

Ho tradotto la sua idea principale in inglese qui.

eseguire regedit; apri HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ DirectX Quindi devi modificare i seguenti due elementi: Articolo 1: Nome: Versione, Tipo: REG_SZ, Il valore dovrebbe essere un numero piuttosto piccolo per rendere l'installazione riuscita.

Articolo 2: Nome: SDKVersion. Ma nella tua macchina, il nome può essere diverso, ad esempio, può essere ManagedDirectXVersion. Ma il tipo dovrebbe essere REG_SZ. Tipo: REG_SZ, Il valore dovrebbe essere un numero piuttosto piccolo per rendere l'installazione riuscita.

In effetti, è possibile fare riferimento al file DirectX.lgo per trovare il numero esatto di versione.

Per me funziona.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.