Як в windows виправити помилку запуску програми «паралельна конфігурація неправильна»

83

Всі сторонні додатки так чи інакше використовують ресурси операційної системи, зокрема, динамічні бібліотеки. Якщо необхідна додатком бібліотека відсутня в системі, установка або запуск програми завершується помилкою. Зазвичай в описі помилки вказується назва відсутнього файлу, але так буває не завжди, наприклад, в описі помилки «не вдалося запустити додаток, оскільки його паралельна конфігурація неправильна» немає ніякого натяку на відсутній ресурс.

Відкриємо по секрету, що помилка із зазначенням на паралельну конфігурацію (side-by-side configuration) виникає при запуску програм, що вимагають наявності на пк відповідної версії microsoft visual c++ redistributable . Завантажити та встановити всі останні версії цього компонента не складає труднощів, але можна піти й іншим шляхом — замість того що б встановлювати заново всі пакети поспіль, просто завантажити і встановити в систему одну відсутню бібліотеку. Тільки як визначити, яка саме dll потрібна для роботи програми?

Для цього нам потрібно проаналізувати файл маніфесту програми, в якому розробники зазвичай прописують ресурси, необхідні для роботи даного програмного забезпечення. Файл маніфесту являє собою звичайний xml документ, який може зберігається як окремо від виконуваного файлу програми (в деяких портативних програмах), так і всередині екзешніка. Щоб його переглянути, використовуємо будь-який редактор ресурсів, наприклад, resource hacker .

Запускаємо редактор ресурсів і перетягуємо на його порожнє вікно виконуваний файл програми, маніфест якої хочемо вивчити. У лівій колонці вибираємо пункт «manifest» , заходимо в підрозділ і натискаємо по міститься в ньому елементу. Текстовий вміст файлу маніфесту буде відображено в правій колонці resource hacker. Зверніть увагу на вміст блоку dependency , в ньому повинен бути атрибут name , в якості значення якого вказується необхідний програмі ресурс, в продемонстрованому прикладі це microsoft.windows.build.appx.appxpackaging.dll — динамічна бібліотека, що входить до складу windows sdk .

Якщо ви не хочете використовувати resource hacker або інше стороннє по, можете спробувати обійтися засобами операційної системи, точніше, журналу подій, в який помилка запуску програми буде занесена автоматично.

Відкрийте журнал з меню win + x і перейдіть до розташування журнали windows ->додатки і знайдіть запис про помилку з джерелом side-by-side. На вкладці «загальні » буде вказано відсутній ресурс і рекомендація виконати трасування для отримання більш докладних відомостей.

Знаючи назву відсутньої бібліотеки, можна пошукати інформацію про неї в google . Якщо ви хочете отримати більше відомостей, скористайтеся вбудованою в windows утилітою трасування winsxs , призначеної для діагностики маніфестів.

Команди трасування і конвертування elt-лога показані на скріншоті нижче.

Послідовність дій наступна:

Тепер залишилося тільки вивчити отриманий звіт.

Відкрийте його блокнотом і відшукайте рядок «помилка: не вдається дозволити посилання» в ній має бути вказано ім’я відсутнього компонента і його версія.

Припустимо, це microsoft.vc90.debugcrt версії 9.0.30729.1 .