Как я могу удаленно получить сетевые ресурсы и подключения системы? - PullRequest
3 голосов
/ 23 апреля 2010

Я ищу способ удаленного получения информации, аналогичной следующим консольным приложениям:

  • чистая польза
  • чистая доля
  • netstat -ano

Однако мне нужно иметь возможность делать это без запуска стороннего приложения в системе. Это фактически исключает использование psexec для удаленного выполнения команды, поскольку psexec затем будет установлен как служба.

Я должен добавить, что у меня есть учетные данные администратора в удаленной системе. Я рассмотрел возможность удаленного выполнения WMI, но для этого нужно, чтобы я записал вывод в файл и затем извлек его. Это возможно, но я хотел бы знать, есть ли у кого-нибудь лучший способ.

Я использую Delphi 2010.

Ответы [ 3 ]

5 голосов
/ 23 апреля 2010

есть пара компонентов Delphi WMI, которые обеспечивают удаленный доступ. Я не использовал параметры дистанционного управления лично, хотя.

MagWmi - http://www.magsys.co.uk/delphi/magwmi.asp (поддержка Delphi 2010 и бесплатно с исходным кодом)

WMISet / NTSet - http://www.online -admin.com / ntset.html (TNTShare Управляет общими ресурсами на локальном компьютере и удаленных хостах. С помощью этого компонента вы можете изменять список общих устройств, просматривать файлы, которые были открыты удаленными пользователями, просматривать и завершать удаленные сеансы, открытые для конечного компьютера, изменять список подключенных сетевых дисков. Это не бесплатно.)

GLibWMI - находится на Torry.net, домашняя страница недоступна. (Delphi 2010 поддержка и бесплатное программное обеспечение с источником). Не уверен, что он способен удаленного доступа. Я не использовал его.

Надеюсь, это поможет

2 голосов
/ 26 апреля 2010

Я думаю так же, как Логман .
Вы можете получить доступ к этой информации, используя WMI .

GLibWMI компоненты можно найти на этом сайте (http://neftali.clubdelphi.com) или sourceforge (http://sourceforge.net/projects/glibwmi/).
) Текущая версия 1.8b и содержит компонент SharedInfo , с помощью которого вы можете получить эту информацию.
Исходный код доступен, поэтому вы можете расширить его для доступа к другим классам WMI, если это необходимо.

Привет.
П.Д .: Извините за мои ошибки с английским.

1 голос
/ 24 апреля 2010

Вы можете перечислить акции, используя функцию NetShareEnum (заголовки в Jedi Apilib).

Я предполагаю, что должен быть API для "чистого использования", но я никогда не использовал его (проверьте Функции WNet ). Альтернативой является использование метода EnumNetworkDrives объекта com WshNetwork.

Что касается netstat, я не думаю, что это возможно сделать удаленно (кроме использования какого-либо метода для удаленного запуска процесса).

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