Не вдалося підписати візуальну студію (помилка signtool.exe)


9

Після прийняття другорядного оновлення Windows сьогодні після обіду, я виявив, що більше не можу робити підписані версії мого додатка Visual Studio.

Поглибившись в проблемі, я натрапив на програму signtool.exe, яка знаходиться в неясному каталозі (C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ 10.0.18362.0 \ x64). Використовуючи командний рядок, я спробував запустити його вручну, щоб підписати додаток, але коли я це зробив, нічого не сталося: ні виводу, ні повідомлення про помилку. Я також спробував запустити його без параметрів, очікуючи повідомлення про допомогу або хоча б помилку, але знову ж нічого.

Я перейшов на інший комп'ютер, який ще не отримав жодного оновлення Windows сьогодні, знайшов той самий файл і запустив його: і він працював чудово.

Думаючи, що у мене, мабуть, був пошкоджений файл .exe на першому комп’ютері, я скопіював версію з іншого комп'ютера, але вона все ще не вдалася. Однак якщо я перейменую файл, то він запускається. Наприклад, якщо я перейменую його на "signtool1.exe", то я можу запустити його з командного рядка добре, хоча Visual Studio все ще не може запустити його через зміну імені.

Я намагався перезавантажити комп’ютер кілька разів під час цього процесу, думаючи, що, можливо, була його копія, яка застрягла в пам'яті, але немає. Я також шукав його в диспетчері завдань.

Я ніколи раніше такого подібного не бачив. Ця ж програма запускає або нічого не робить, залежно від імені виконуваного файлу. Ще одна деталь: вона фактично працює незалежно від імені файлу, якщо я копіюю його в домашній каталог. Що може спричинити таке?

Спасибі, Френк


Win10 більше не показує діалогове вікно аварії, коли процес не завершується. Щось потрібно виправити на машині програміста. Подивіться в журналі подій програми для повідомлення про аварійне завершення роботи.
Ганс Пасант

Я зіткнувся з тією ж проблемою. Я зафіксував це кінчиком від @ xperia64 нижче. Однак це посилання також може бути актуальним Microsoft визнає основні проблеми з Windows 10 KB453599
Ніл Вайчер

Відповіді:


11

Замість перейменування signtool.exe я виявив, що перейменування / видалення signtool.exe.manifest дозволяє запускати signtool, а також дозволяє Visual Studio запускати його.

Я не знаю, чому це відбувається або які побічні ефекти видалення маніфесту, але цього достатньо, щоб мій проект будувався заново.

Для довідки я зіткнувся з цією проблемою після того, як чистий VS2019 встановив у чистій Windows 10 1909 ВМ (але повністю оновлений незабаром після).


1
Дякую, видалення файлу маніфесту також працювало для мене.
Френк ЛаРоза

7

Я бачу ту саму проблему. Signtool не відображає діалогових вікон помилок, але повернений код помилки - -1073741502 (0xC0000142), STATUS_DLL_INIT_FAILED.

Проблема може бути пов’язана з оновленням KB4535996. Я видалив оновлення, коли побачив проблему, і signtool працював нормально. Проблема повернулася, коли я знову встановив оновлення.

Signtool працює, якщо я переміщу файл маніфесту з каталогу, як ви бачили. Але я також помітив, що signtool працює, коли я переміщую маніфест назад в каталог.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.