|
Сканирование сетевого порта | ☑ | ||
---|---|---|---|---|
0
Slon747
15.03.17
✎
14:52
|
Как можно средствами 1С (возможно используя WScript.Shell) проверить, открыт ли сетевой порт?
|
6 |
||
1
Slon747
16.03.17
✎
17:42
|
up.
|
|||
2
Garykom
гуру
16.03.17
✎
18:09
|
какой порт? там откуда сканируем (не блочит ли файрвол) или на удаленном компе?
Может сначала слегка в теории разобраться а? Потом и глупые/смешные вопросы пропадут сами |
|||
3
Serginio1
16.03.17
✎
18:19
|
public static int GetAvailablePort(int port)
{ IPGlobalProperties ipGlobalProperties = IPGlobalProperties.GetIPGlobalProperties(); TcpConnectionInformation[] tcpConnInfoArray = ipGlobalProperties.GetActiveTcpConnections(); var set = new HashSet<int>(); foreach (TcpConnectionInformation tcpi in tcpConnInfoArray) { set.Add(tcpi.LocalEndPoint.Port); } for(var i=port; i< 49152; i++) { if (!set.Contains(i)) return i; } return port; } |
4 |
||
4
Garykom
гуру
16.03.17
✎
18:26
|
(3) И каким образом это "получение списка всех в теквремя используемых локальных портов, затем возврат минимального неиспользуемого номера порта" поможет ТС?
|
5 |
||
5
Garykom
гуру
16.03.17
✎
18:28
|
(4)+ блин хотя бы цикл с 1024 сделать чтобы проблемы не огрести заняв своим софтом некий стандартный порт
|
|||
6
Ufo_Attack
16.03.17
✎
18:57
|
(0) Какую задачу решаешь?
|
7 |
||
7
Slon747
17.03.17
✎
09:37
|
(6) Проверить, открыт ли сетевой порт на другом пк в локальной сети.
|
10 |
||
8
eklmn
гуру
17.03.17
✎
10:11
|
shell = wscript.createobject("wscript.shell")
shell.run "powershell -command (New-Object System.Net.Sockets.TcpClient).Connect('SERVER', PORT)" |
|||
9
eklmn
гуру
17.03.17
✎
10:13
|
+telnet client не забудь установить в стандартных виндовсах
|
|||
10
Garykom
гуру
17.03.17
✎
12:27
|
(7) Прикинь он там может быть открыт (не запрещен доступ по нему) но его никто не слушает
|
|||
11
abibas
17.03.17
✎
12:39
|
Function ScanPort(Host, Port)
Set x = CreateObject("MSWINSOCK.Winsock.1") x.RemoteHost = Host x.RemotePort = Port x.Connect count = 0 State = x.State Pause = 0 Do While x.State <> 7 If count = 10 Then Exit Do End if Pause = Pause + 10 count = count + 1 wscript.sleep(Pause) Loop ScanPort = x.State Set x = Nothing End Function ScanPort = 7 порт открыт, другое - закрыт. В 1С уже сам перенесешь? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |