Я размещаю службу WCF в Windows 7 IIS. Когда служба пытается записать файл конфигурации и получает сообщение об ошибке:
"Доступ к пути 'C: \ Program Files (x86) \ MIMS \ Master \ ahug_uqt.tmp' запрещен."
Это не имя файла конфигурации, хотя я предполагаю, что ConfigurationManager создает временный файл, а затем обновляет его до реального файла конфигурации.
В любом случае, я проверил, что neil-laptop (это мой пользователь), ASPNET, NETWORKSERVICE и LOCALSERVICE имеют полный контроль над папкой программ, и они это делают. При отладке в сервисе он показывает текущего участника потока как neil-laptop. Этого не должно быть, поскольку это процесс IIS.
Итак, как мне узнать, под каким пользователем запущен поток, чтобы я мог дать ему соответствующие разрешения. Имея в виду также, что вышесказанное работало на Win2003 и XP, когда я дал пользователям полный контроль над папкой. Черт возьми, Windows 7.
Надеюсь,
Нил.