Вопрос

В процессе написания сервиса у меня есть

        //# Service Account Information
        serviceProcessInstaller.Account = ServiceAccount.LocalSystem;

в установщике для этого.

У меня возникли проблемы с записью журнала в

    static string USERS_HOME_DIR = Environment.GetEnvironmentVariable("HOMEDRIVE") + Environment.GetEnvironmentVariable("HOMEPATH");

с момента запуска службы (установленной "от имени администратора") регистратор событий сообщал

Служба не может быть запущена.Исключение System.IO.DirectoryNotFoundException:Не удалось найти часть пути "C:\Documents\Folder представляющую интерес"

Мне нужны домашние пути пользователей local_PC, есть идеи, как их получить?

Обновить

На самом деле было бы лучше просто получить путь для текущего вошедшего в систему пользователя, когда начнется его сеанс и служба.В моем сервисе нет повторного входа, но один пользователь лучше, чем ни одного.

Это было полезно?

Решение

Если я правильно понял ваш вопрос, то, что вы ищете, это перечисления специальных папок.

С чем-то вроде:

String PersonalFolder = Environment.GetFolderPath(Environment.SpecialFolder.Personal);

Если вы хотите запустить службу от имени учетной записи localsystem, существует отдельный набор стандартов для хранения данных.Видишь этот ответ по ошибке сервера.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top