Почему не запускается программа без вывода ошибок?
Установил программу Fan Control на 2 ПК успешно, а на свой не получается. При запуске появляется кружок около курсора, больше ничего, в диспетчере тоже ничего не появляется
На те 2 ПК установил только Net runtime и Net desktop версии 10, как и требовалось. Заработало
Здесь это не помогло. Запускается только версия программы под Net 4.8, но под 10-ю не запускается (версия Fan Control одна и та же - 284, актуальная, но сделана под разные версии Net)
Знаю, что похожие симптомы бывают при отсутствии Visual C++ distributos, но на те 2 ПК ничего дополнительного ставить не пришлось, причём на одном из них стоит буквально копия системы с "проблемного" ПК
Что можно посмотреть? Вопрос скорее из интереса решения проблемы, поэтому хотелось бы найти несложное решение и учесть это на будущее
Процесс мог просто мгновенно завершиться, в диспетчере его не поймать, поэтому лучше смотреть журналы, а не гадать про VC++. Сначала eventvwr.msc → Журналы приложений и служб → Microsoft → Windows → CodeIntegrity → Operational: если на момент запуска там события 3033/3077 с путём к dll от FanControl, Windows блокирует её загрузку (Smart App Control или политика WDAC, причина видна в тексте события). У FanControl на .NET 10 так уже было, issue 3849 в их репо. Сверь у себя Безопасность Windows → Управление приложениями → Smart App Control с двумя рабочими ПК.
В CodeIntegrity пусто → Журналы Windows → Приложение (Application Error, .NET Runtime); если и там ничего, dotnet --list-runtimes: нужен Microsoft.WindowsDesktop.App 10.x именно x64.
Спасибо, странно, в Code Integrity пусто, зато в обычном журнале (Журналы Виндовс - Приложение) появляется по 2 ошибки на запуск:
первая
Application: FanControl.exe
CoreCLR Version: 10.0.1326.50504
.NET Version: 10.0.13
Description: The process was terminated due to an internal error in the .NET Runtime at IP 0x00007FF863AB9015 (0x00007FF8639A0000) with exit code 0x80131506.
вторая
Имя сбойного приложения: FanControl.exe, версия: 284.0.0.0, метка времени: 0x6ac20000
Имя сбойного модуля: KERNELBASE.dll, версия: 10.0.19041.1865, метка времени: 0xdd841229
Код исключения: 0x80131506
Смещение ошибки: 0x000000000010fed2
Идентификатор сбойного процесса: 0x3f9c
Время запуска сбойного приложения: 0x01dd671e0ed588ed
Путь сбойного приложения: C:\Program Files (x86)\FanControl\FanControl.exe
Путь сбойного модуля: C:\Windows\System32\KERNELBASE.dll
Идентификатор отчета: 58995959-96e1-49a5-9344-f5806e399210
Полное имя сбойного пакета:
Код приложения, связанного со сбойным пакетом:
Версия виндовс 21Н1, Дипсик предлагает обновиться, потому что не поддерживается CET, но по-моему ерунда, ведь копия ОС работает. Да и установка всех версий NET не помогла, увы, поставил те же, что на работающем
Vitaliy Ivanov, по твоему скрину на рабочих ПК рантайм 10.0.0, а на проблемном 10.0.13 (как и в ошибке), так что копия ОС тут не показатель. Поставь Desktop Runtime 10.0.0 рядом, либо обнови винду до 22H2 с последними апдейтами: сборка 19041.1865 из 2022-го.
Пума Тайланд, ошибочка вышла, у меня как раз 22Н2 19041.1865 оказалась, неправильно код версии загуглил
Интересно, что версия 10.0.2 или 10.0.13 перезаписывают версию 10.0.0, ока пропадает автоматически, а на другом ПК они вместе сосуществуют.
Ну и старые для теста < 8.x.x удалены. В общем, пробы версий не помогли, увы. Возможно, какие-то старые драйвера мешают или оставшееся ПО, эта система только на сокете АМ4 запускалась на 4х разных платах, были ещё интелы, и старее, и новее
vla3d, попробуй в cmd выставить set DOTNET_TieredPGO=0 и запустить FanControl.exe оттуда же. Если упадёт так же, то ещё set DOTNET_EnableAVX512F=0: хоть поймём, JIT это или что-то другое.