Здравствуйте, Kedrr, Вы писали:
K>Здравствуйте, servancho, Вы писали: K>Привет. Довольно интересный метод. Если есть примеры то буду благодарен. K>Спасибо.
Еще добавлю что метод работает в кроссдомене, даже если домены не трастовые, т.к. не требует имперсонации.
Хотел прямо код прислать, да только там вобщем и слать нечего, по названиям функций все примеры использования находятся в нете.
Реализация основных шагов:
1. Маппинг шары
Смотри описание вызовов WinAPI: WNetAddConnection2, WNetCancelConnection. Именно тут указываются креды на удаленную машину. В последующих вызовах используются они.
2. Виндовый сервис можно подсмотреть в примерах к Windows SDK. Там есть и нативный и .NET.
3. Скопировать файлы на удаленную машину можно любым вызовом, поддерживающим сетевые пути.
4. Инсталляция сервиса:
Смотри описание WinAPI: OpenSCManager, CreateService, CloseServiceHandle, DeleteService. Найдешь примеры кода и как использовать. В .NET есть инсталлер, но он только на локале работает (согласно Reflector).
5. Управление сервисом (старт/стоп). Смотри описание .NET ServiceController. Если надо натив, смотри описалово WinAPI: OpenService, StartService, ControlService.
Если руки золотые, не важно из какого места они растут.