Api ms win core winrt l1 1 0 dll отсутствует, как исправить windows 7
Обновлено: 21.11.2024
У меня проблема с нашим исполняемым файлом. Я запускаю этот 32-разрядный исполняемый файл C++ в своем 64-разрядном окне разработки Windows 7, в котором также есть все эти приложения Microsoft (Visual Studio 2008 + 2010, TFS, SDK, Microsoft Office). И он по-прежнему работает нормально.
Теперь я получил клиентскую установку той же самой программы и попросил протестировать ее с чистой установкой Windows 7. Таким образом, я получил одну 64-разрядную версию VMware для Windows 7 и обновил ее до Windows 7 SP 1 (та же самая версия, которую настраивает мой блок разработчика). Но в то время как на моей машине разработчика все в порядке, программа не работает с коробкой VMware (30-дневная пробная версия).
Х86 Dependency Walker сообщает мне, что отсутствуют следующие файлы DLL:
- API-MS-WIN-CORE-COM-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
- API-MS-WIN-SHCORE-SCALING-L1-1-0.DLL
- DCOMP.DLL
- GPSVC.DLL
- IESHIMS.DLL
Я искал в Google эти API-MS-WIN-. DLL и обнаружили, что они уже должны быть частью Windows 7 (хотя некоторые сайты утверждают, что они принадлежат Windows 8 и Windows Server 2012).
- запуск 'sfc /scannow'
- установка исполняемых файлов среды выполнения Visual Studio 2008 SP1
Но это ничего не решило. :-(
Примечание: в моей коробке разработки их тоже нет, и, похоже, они не нужны. Например, user32.dll на моем компьютере не связывается ни с одним из них, в отличие от установки на VMware.
Есть идеи, как решить эту проблему? Я пытался найти подходящую загрузку/исправление на страницах Microsoft, но не смог.
После решения моей проблемы я хотел сообщить, что я узнал, и я не могу опубликовать это как ответ, потому что вопрос был закрыт.
Фактически все DLL-файлы, о которых сообщил инструмент Dependency Walker, отсутствуют, а именно те, которые
файлы DLL типа не были частью реальной проблемы.
В моем случае отсутствовала регистрация трех файлов OCX, и после этого все было просто отлично, НО инструмент Dependency Walker по-прежнему отображал все те же файлы DLL, что и раньше, даже когда программа просто работала нормально.
Суть этого: как кто-то сказал в другом месте, инструмент немного устарел и не всегда работает должным образом с более новой ОС. Таким образом, будьте внимательны и не вводите в заблуждение отсутствие «API-MS-WIN-CORE-COM-L1-1-0.DLL», . проблема, вероятно, заключается совсем в другом.
Как насчет того, чтобы снова открыть это? Мой поиск в Google привел меня к этому вопросу всего через 20 часов после того, как он был закрыт, так как «вряд ли поможет будущим посетителям».
какие 3 файла ocx вам нужно было зарегистрировать и, что более важно, как вы это выяснили? Я застрял на этом уже несколько дней
Привет всем. Я думаю, что я прибил это (см. ниже), но в качестве примечания, вы можете спокойно игнорировать отказ от ссылки на IESHIMS.DLL и GPSVC.DLL. Это происходит практически во всем, что я компилирую в Win7, и, похоже, не влияет на работу. Этот опыт основан примерно на 30+ бинарных файлах. вздох Я ненавижу-ненавижу-ненавижу заниматься разработкой Windows по таким причинам.
14 ответов 14
Эта проблема связана с отсутствием "распространяемого пакета" Visual Studio. На основе обхода зависимостей не очевидно, какой из них отсутствует, но я бы сначала попробовал тот, который соответствует вашей версии компилятора, и посмотрел, правильно ли все работает:
Я столкнулся с этой проблемой, потому что использую компиляторы Visual Studio, а не полную среду Visual Studio.
Кроме того, похоже, что это может быть вызвано установкой распространяемых пакетов в некоторых версиях Win 7. Спасибо, m$.
У меня тоже были проблемы с этим, и я считаю, что есть несколько способов исправить это. В моем случае я заметил, что компиляция с конфигурацией отладки привела к тому, что моя com dll не зарегистрировалась. Однако, когда я изменил свою конфигурацию на выпуск, я смог получить чистую регистрацию. Моя среда — VS 2012. И я скопировал нужные файлы redist (версия x64) в ту же папку, что и моя com dll.
Я только что решил ту же проблему с C++ Qt 5 и 64-разрядной версией Windows 7 с помощью MSCVC 2012.
Вначале я думал, что проблема связана с файлом DLL MSVC/Windows, но, как сказал БорисП, проблема заключалась в зависимостях моего проекта. Ключ «Как узнать зависимости вашего проекта в Qt 5?».
Поскольку я не нашел четкого способа узнать это (Dependency Walker мне не очень помог), я выполнил следующую "обратную процедуру", которая занимает не более 5 минут и позволяет избежать многих головных болей с Зависимости файлов DLL:
- Скомпилируйте проект и перенесите исполняемый файл в пустую папку: myproject.exe
- Попробуйте выполнить его. Будет получена ошибка (отсутствуют DLL-файлы).
- Теперь скопируйте в эту папку все файлы DLL из Qt (в моем случае они находились в C:\Qt\Qt5.1.1\5.1.1\msvc2012_64_opengl\bin).
- Попробуйте выполнить еще раз, возможно, все будет нормально.
- Начинайте удалять постепенно и пытайтесь каждый раз, когда ваш исполняемый файл все еще работает, старайтесь оставить минимально необходимые DLL-файлы.
Когда у вас есть все DLL-файлы в одной папке, легче определить, какие из них недействительны (XML, WebKit, . что угодно ..), и, следовательно, этот метод не занимает более пяти минут.< /p>
Если отсутствующие библиотеки DLL являются сборками GAC, этот метод поможет вам определить, какие библиотеки DLL отсутствуют (в сообщениях об ошибках должно быть указано, какую сборку не удалось загрузить), а затем вам придется выяснить, какой инструментарий или инфраструктура установить на машину, чтобы поместить их в GAC (или включить в свой дистрибутив).
это будет работать только для прямых зависимостей dll, загружаемых при запуске. если ваша программа или dll будут загружать некоторые dll с задержкой или динамически, вы не сможете найти их с вашим подходом.
Я только что решил ту же проблему.
Зависимость Walker в данном случае вводит в заблуждение и заставила меня потерять время. Итак, список «отсутствующих» DLL-файлов из первого сообщения не поможет, и вы, вероятно, можете его игнорировать.
Решение состоит в том, чтобы найти ссылки, которые вызывает ваш проект, и проверить, действительно ли они установлены на сервере.
@Бен Браммер, не важно, каких трех файлов .ocx не хватает, потому что они отсутствуют только для проекта Лео Т. Абрахама. Возможно, ваш проект вызывает другие файлы DLL.
Короче говоря, решение таково: проверьте, есть ли все ссылки на ваш проект.
Как уже упоминалось, DCOMP является частью распространяемых компонентов VC++ (реализующих среду выполнения OpenMP) и является единственным действительно отсутствующим компонентом. Все остальное — ложные сообщения.
В частности, API-MS-WIN-XXXX.DLL представляют собой наборы API — по сути, дополнительный уровень косвенного вызова, вводимый постепенно, начиная с Windows 7. Разработка Dependency Walker, по-видимому, была остановлена задолго до этого, и это не может правильно обрабатывать наборы API.
Так что тут не о чем беспокоиться. Вы больше ничего не упускаете.
Лучшей альтернативой поиску действительно необходимых отсутствующих DLL-файлов (если это действительно проблема) является запуск Process Monitor и откат назад от сбоя, поиск последовательности неудачных проб для определенного DLL-файла во всех системный путь.
+1 для ProcessMonitor. Это бесплатная загрузка от Microsoft. Присоединитесь к процессу matlab, и вы увидите все, что происходит, включая загрузку dll
Я тоже столкнулся с этой проблемой, но решение, которое здесь встречается часто и которое я видел в других местах в Интернете, — это «[пере]установить распространяемый пакет». Однако для меня это не работает, так как проблема возникла при запуске установщика нашего продукта (который устанавливает распространяемый пакет) для тестирования наших новых блестящих сборок Visual Studio 2015.
Проблема возникла из-за того, что перечисленные файлы DLL не находятся в пути установки Visual Studio (например, C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist) и поэтому не были добавлены в установка. Эти dll api-ms-win-* устанавливаются по пути установки Windows 10 SDK как часть установки Visual Studio 2015 (например, C:\Program Files (x86)\Windows Kits\10\Redist).
Установка в Windows 10 прошла нормально, но установка в Windows 7 потребовала добавления этих файлов DLL в установку нашего продукта. Дополнительные сведения см. в разделе Обновление универсальной среды выполнения C в Windows, в котором описывается добавление этих зависимостей, вызванных Visual Studio 2015, и предоставляются загрузки для различных платформ Windows; также см. раздел Введение в универсальную CRT, в котором описывается изменение дизайна библиотек CRT. Особый интерес представляет пункт 6 в разделе «Распространение программного обеспечения, использующего универсальную CRT»:
Обновлено 11 сентября 2015 г. Поддерживается локальное развертывание Universal CRT. Чтобы получить двоичные файлы для локального развертывания приложения, установите пакет средств разработки программного обеспечения Windows (SDK) для Windows 10. Двоичные файлы будут установлены в папку C:\Program Files (x86)\Windows Kits\10\Redist\ucrt. Вам нужно будет скопировать все библиотеки DLL вместе с вашим приложением (обратите внимание, что набор необходимых файлов DLL отличается в разных версиях Windows, поэтому вы должны включить все файлы DLL, чтобы ваша программа работала во всех поддерживаемых версиях). Windows).
Разработка операционной системы Microsoft® Windows® компанией Microsoft привела к созданию последнего файла api-ms-win-core-winrt-l1-1-0.dll. Он также известен как файл DLL-заглушки ApiSet (DLL с расширением файла), который классифицируется как файл Win32 DLL (библиотека динамической компоновки).
Api-ms-win-core-winrt-l1-1-0.dll была впервые разработана 01.08.2012 в операционной системе Windows 8 для Windows 8. Последнее обновление файла, выпущенное для Windows 8.1, было на 10 /18/2013 [версия файла 6.3.9600.16384 (winblue_rtm.130821-1623)]. Api-ms-win-core-winrt-l1-1-0.dll входит в состав Windows 8.1 и Windows 8.
Ниже вы найдете исчерпывающую информацию о файлах, инструкции по простому устранению неполадок с файлами DLL и список бесплатных загрузок api-ms-win-core-winrt-l1-1-0.dll для каждой доступной версии файла.
Анализ файла предоставлен Джейсоном Гитером (автор)
Рекомендуемая загрузка: исправить ошибки реестра в WinThruster, связанные с api-ms-win-core-winrt-l1-1-0.dll и Windows.
Совместимость с Windows 10, 8, 7, Vista, XP и 2000
Средний рейтинг пользователей
Дополнительное предложение для WinThruster от Solvusoft
| ЛСКП | Политика конфиденциальности | Условия | Удалить
Информация о разработчике и программном обеспечении | |
---|---|
Разработчик программного обеспечения: | Microsoft Corporation |
Программное обеспечение: | Операционная система Microsoft® Windows® |
Юридические авторские права: | © Microsoft Corporation. Все права защищены. |
Сведения о файле | |
---|---|
Набор символов : | Unicode |
Код языка: | Английский (США) |
Флаги файлов: | (нет) |
Маска флагов файлов: | 0x003f |
Точка входа: | 0x0000 |
Размер кода: | 1024 |
Информация о файле | Описание |
---|---|
Размер файла:< /td> | 3,5 КБ |
Дата/время изменения файла: | 2013:08:22 04:14:21+00:00< /td> |
Дата/время изменения индекса файла: | 2017:11:05 07:04:30+00:00 | Тип файла: | Win32 DLL |
Тип MIME: | application/octet-stream |
Тип машины: | Intel 386 или новее и совместимые |
Временная метка: | 2013:08:22 04:14:21+00:00 |
Тип PE: | PE32 |
Версия компоновщика: | 11.0 |
Размер кода: | 1024 |
Размер инициализированных данных: | 1536 |
Размер неинициализированных данных: | 0 |
Точка входа: | 0x0000 |
Версия ОС: | 6.3 |
Версия образа: | 6.3 |
Версия подсистемы: | 6.3 |
S ubsystem: | Командная строка Windows |
Номер версии файла: | 6.3.9600.16384 |
Номер версии продукта: | 6.3.9600.16384 |
Маска флагов файла: | 0x003f | tr>
Флаги файлов: | (нет) |
Файловая ОС: | Windows NT 32-bit |
Тип файла объекта: | Библиотека динамической компоновки |
Подтип файла: | < td>0|
Код языка: | Английский (США) |
Набор символов: td> | Unicode |
Название компании: | Microsoft Corporation |
Описание файла:< /td> | DLL-заглушка ApiSet |
Версия файла: | 6.3.9600.16384 (winblue_rtm.130821-1623) |
Внутреннее имя: | apisetstub |
Юридическое авторское право: | © Microsoft Corporation. Все права защищены. |
Исходное имя файла: | apisetstub |
Название продукта: | Операционная система Microsoft® Windows® |
Версия продукта: | 6.3.9600.16384 |