FileSystemWatcher работает под именем пользователя - PullRequest
3 голосов
/ 01 апреля 2010

У меня есть приложение c # winform, которое работает под локальной учетной записью, но нуждается в мониторинге папок в домене. Я использую слегка измененный код из здесь , чтобы скопировать файлы, и это прекрасно работает. Можно ли использовать подобный код с настройкой олицетворения FileSystemWatcher, чтобы я мог отслеживать папку в домене?

Ответы [ 2 ]

6 голосов
/ 01 апреля 2010

Да, есть хороший класс олицетворения здесь , включите этот класс в свой проект, а затем просто поместите FileSystemWatcher в блок использования, например:

using ( new Impersonator( "myUsername", "myDomainname", "myPassword" ) )
{
   ...

   <code that executes under the new context>

   ...
}
1 голос
/ 01 апреля 2010

Вы могли бы:

Применение разрешений к папкам домена, которые разрешают доступ пользователям, не входящим в домен (т. Е. Всем).

Войдите в систему с учетной записью домена, у которой есть разрешения, и запустите приложение winform.

Измените код FileSystemWatcher на службу Windows и запустите его под учетной записью domian с достаточными разрешениями.

Олицетворение учетной записи домена в существующем коде, есть несколько хороших решений для проекта кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...