#windows #visual-studio #manifest
#Windows #visual-studio #манифест
Вопрос:
Я попытался скомпилировать код с сохранением компоновщика-> файл манифеста-> сгенерировать файл манифеста = Да на visual2015 код не работал для 64-разрядной Windows 10, но он отлично работал для 32-разрядной версии.
Затем я изменил свойство как компоновщик-> файл манифеста-> сгенерировать файл манифеста = Нет, теперь код работает нормально как для 32, так и для 64 бит.
Итак, мой вопрос, что происходит, когда я выполняю вышеуказанное изменение свойства? Как manifest file
он играет свою роль во время выполнения?
Я пытался использовать Google, но не смог получить его полностью, поэтому помогите мне с этим.
Комментарии:
1. Манифест требуется для всех версий Windows за последние 10 лет. Он содержит информацию о конфигурации, помимо того, что можно сделать с форматом исполняемого файла PE. Самое главное, что он объявляет программу совместимой с UAC, без манифеста ОС рассматривает вашу программу как устаревшую программу, и у вас будут проблемы с файлами и разделами реестра. Проект на C всегда имеет зависимость от разрядности, просто небольшой угловой пример для чистой программы MSIL, созданной C /CLI (/clr:pure). «не сработало» не помогает нам помочь вам.
2. не сработало, означает, что я получаю сообщение об ошибке «Консоль управления Microsoft перестала работать».
3. Тьфу, для плагина MMC требуется DLL, а не EXE. Манифест имеет значение только для EXE. Используйте отладчик, чтобы выяснить причину сбоя, Проект> Свойства> Отладка> Команда = «mmc.exe «.
4. В WinDbg я не получаю никаких ошибок при остановке MMC. Он просто вылетает, не выдавая никаких ошибок в WinDbg.