Прежде всего, это мой третий вопрос по аналогичной теме ... и до сих пор у меня нет ответа, может быть, только приближаюсь к нему (см. первый , второй ).
Мое веб-приложение (ASP.NET MVC3 под IIS 7.5) запускает git для доступа к некоторым репозиториям github. После того, как я обновил свою рабочую станцию до Windows SP1, она перестала работать. Причина была в том, что как только git запустился, он фактически запускает ssh.exe для связи с github. Ssh.exe зависает, поэтому все приложение зависает.
Пул приложений, используемый этим приложением, использует тот же идентификатор процесса, что и я. Но с помощью ProcessHacker я вижу следующую картинку:
Из-за того, что USERPROFILE указывает на / system32 / config / systemprofile, ssh.exe ожидает наличие папки .ssh, которая содержит открытый / закрытый ключи. Поскольку ключей там нет, он зависает.
Но ключи обычно находятся в ~ / .ssh (в моем случае c: \ users \ alexander.beletsky.ssh). Как только я скопировал ключи в / system32 / config / systemprofile, приложение начало работать должным образом.
У меня вопрос, почему w3wp.exe считает, что его профиль в / system32 / config / systemprofile? можно ли это изменить? это ожидаемое поведение для пула приложений или просто проблема моей машины?
В ожидании каких-либо подсказок!
EDIT
Для свойства "Загрузить профиль пользователя пула приложений" установлено значение ИСТИНА.