DirectX SDK (июнь 2010 г.) Проблемы с установкой: код ошибки S1023 - PullRequest
175 голосов
/ 05 ноября 2010

У меня возникли проблемы с установкой DirectX SDK. Кажется, что все идет хорошо во время установки, но в конце я получаю сообщение:

Установка не удалась. Во время установки распространяемых пакетов возникли ошибки. Пожалуйста, закройте все открытые программы и попробуйте снова запустить программу установки. Если проблемы сохраняются, обратитесь в службу поддержки DirectX Developer.

Код ошибки: S1023

Ну, я попытался закрыть все открытые программы и установить снова, но я получаю ту же ошибку. Что такое код ошибки S1023? Я попробовал Гуглить , но нашел много разных ответов о том, как с этим бороться, и я не уверен, что делать.

Я попытался просмотреть файлы журнала в C:\Windows\Logs. Есть 2 файла журнала, DirectX.log и DirectX_SDK.log. Я не вижу каких-либо заметных признаков "ошибки" или "неудачи" какого-либо рода.

На самом деле самая последняя строка в DirectX.log:

11/04/10 18:36:27: dsetup32: установка завершилась со значением 0 = установка прошла успешно

Может ли кто-нибудь помочь, пожалуйста? Я использую Vista (x64).

Ответы [ 7 ]

268 голосов
/ 08 июня 2011

У меня была та же проблема, и для меня это было потому, что redist x86 vc2010 был слишком новым.

Проверьте вашу временную папку (C: \ Users \\ AppData \ Local \ Temp) для самого последнего файлас именем

Microsoft Visual C ++ 2010 x64 распространяемого Setup_20110608_xxx.html ##

и проверьте наличие следующей ошибки

Блокировщики установки:

На компьютере обнаружена более новая версия Microsoft Visual C ++ 2010 Redistributable.

Окончательный результат: установка завершилась ошибкой с кодом ошибки: (0x000013EC), «сброшен стоп-блок или не выполнено требование System>».(Истекшее время: 0 00:00:00).

, затем перейдите в Панель управления> Программы и компоненты и удалите все распространяемые

Microsoft Visual C ++ 2010 x86 / x64 - 10.0. (номер более 30319)

После успешной установки DXSDK просто запустите Центр обновления Windows, и он обновит распространяемые файлы до последней версии.

82 голосов
/ 22 февраля 2012

У меня уже была одна и та же проблема дважды, и самое простое и лаконичное решение, которое я нашел, находится здесь (в блогах MSDN -> Игры для Windows и DirectX SDK).Однако на тот случай, если эта страница закроется, используйте следующий метод:

  1. Удалите распространяемый пакет Visual C ++ 2010 версии 10.0.40219 (пакет обновления 1) из системы (как x86, так и x64).если это применимо).Это легко сделать из командной строки с правами администратора:

    MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
    MsiExec.exe /passive /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}
    
  2. Установить DirectX SDK (июнь 2010 г.)

  3. Переустановитьраспространяемый пакет Visual C ++ 2010 версии 10.0.40219 (пакет обновления 1).В системе x64 вы должны установить версии C ++ REDIST для x86 и x64.Убедитесь, что установлена ​​самая текущая версия , которая на данный момент представляет собой KB 2565063 с исправлением безопасности.

Примечание: Эта проблема не затрагивает более раннюю версию DirectX SDK, в которой развернут CRT REDIST VS 2005 / VS 2008 и не развернут CRT REDIST VS 2010.Эта проблема не затрагивает веб-среду или автономный установщик среды выполнения DirectX, так как эти пакеты не развертывают какую-либо версию CRT VC ++.

Проверка целостности контрольной суммы файла :Это, конечно, предполагает, что у вас действительно есть поврежденная копия установочного пакета DirectX SDK.Лучший способ проверить это - запустить

fciv -sha1 DXSDK_Jun10.exe

и убедиться, что вы получите

8fe98c00fde0f524760bb9021f438bd7d9304a69 dxsdk_jun10.exe
22 голосов
/ 18 октября 2012

Вот официальный ответ от Microsoft: http://blogs.msdn.com/b/chuckw/archive/2011/12/09/known-issue-directx-sdk-june-2010-setup-and-the-s1023-error.aspx

Сводка, если вы не хотите переходить по ссылке:

  1. Удалите распространяемый пакет Visual C ++ 2010 версии 10.0.40219 (с пакетом обновления 1) из системы (как x86, так и x64, если применимо). Это легко сделать из командной строки с правами администратора:

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

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

  2. Установка DirectX SDK (июнь 2010 г.)

  3. Переустановите распространяемый пакет Visual C ++ 2010 версии 10.0.40219 (пакет обновления 1). В системе x64 вы должны установить версии C ++ REDIST для x86 и x64. Обязательно установите самую последнюю доступную версию, которая на данный момент является KB2565063 с исправлением безопасности.

Windows SDK: Windows SDK 7.1 имеет точно такую ​​же проблему, как отмечено в KB 2717426 .

2 голосов
/ 24 декабря 2011

Найдите Microsoft Visual C ++ 2010 x86 / x64 Redistributable - 10.0.xxxxx в панели управления для добавления и удаления программ. если ххххх> 30319 убрать это

Я просто хотел сказать, что это (я также опустошил свою временную папку в Computer-> C: -> Properties-> Disk Cleanup) сделало установку DirectX June 2010 SDK без сбоев, у меня Vista32bit для всего, что имеет значение. Спасибо, мистер Лин! :)

2 голосов
/ 06 сентября 2011

После удаления слишком большого количества файлов на моей машине с Win7-64bit я тоже застрял здесь. Я не хотел переустанавливать операционную систему, и ни один из приемов не сработал, ожидайте, что этот взлом реестра приведен ниже. Большую часть этого трюка я обнаружил в старом порте pchelpforum, но мне пришлось адаптировать его к моей 64-битной установке:

(Для 32-разрядного восстановления, вероятно, пропустите путь Wow6432Node)

  1. Запустить regedit
  2. Перейдите в HKEY_LOCAL_MACHINE-> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ-> Wow6432Node-> Microsoft-> ​​DirectX
  3. Если эта папка DirectX не существует, создайте ее.
  4. Если уже здесь, убедитесь, что он пуст.
  5. Теперь щелкните правой кнопкой мыши в пустом окне справа и добавьте эти данные (возможно, здесь будет хотя бы строковое значение по умолчанию, просто оставьте его):

    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. Переустановите, используя последний установщик DXSDK. Опция только во время выполнения может работать, но я не тестировал ее.

  7. Profit!
1 голос
/ 05 ноября 2011

Найдите Microsoft Visual C ++ 2010 x86 / x64 Redistributable - 10.0.xxxxx на панели управления для добавления и удаления программ, если xxxxx> 30319, удалите его

0 голосов
/ 08 декабря 2010

Я тоже сталкивался с этой проблемой. И я работаю в XP SP3.

На следующем сайте http://www.docin.com/p-60410380.html# указано решение. Но это упрощенный китайский.

Я перевел его основную идею на английский здесь.

запустить regedit; Откройте HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ DirectX Затем вы должны изменить следующие два пункта: Элемент 1: Название: Версия, Тип: REG_SZ, Значение должно быть довольно небольшим числом для успешной установки.

пункт 2: Название: СДКВерсия. Но на вашем компьютере имя может быть другим, например, это может быть ManagedDirectXVersion. Но тип должен быть REG_SZ. Тип: REG_SZ, Значение должно быть довольно небольшим числом для успешной установки.

Фактически, вы можете обратиться к файлу DirectX.lgo, чтобы найти точный номер версии.

Это работает для меня.

...