TwinCAT 3.0 Широковещательный поиск без интерфейса автоматизации - PullRequest
0 голосов
/ 23 октября 2019

Есть ли способ выполнить широковещательный поиск, используя общее пространство имен TwinCAT.Ads. *? Использование системы автоматизации для этого кажется чрезмерным, не говоря уже о том, что инициализация EnvDTE, генерация решения и, наконец, возможность выполнять поиск занимает почти целую минуту.

Даже просто найти способполучить список настроенных в данный момент маршрутов, вероятно, будет достаточно.

Служба TwinCat 3 в sys-tray, кажется, может сделать это без этого дополнительного багажа, поэтому я надеюсь, что есть какой-то общедоступный интерфейсза это. Дополнительным преимуществом будет отсутствие необходимости ссылаться на Visual Studio SDK.

1 Ответ

0 голосов
/ 23 октября 2019

Существует файл C:\TwinCAT\3.1\Target\StaticRoutes.xml, который содержит все активные статические маршруты этого компьютера. По крайней мере, у меня всегда так. Поэтому я думаю, что служба системного трея просто читает этот файл?

Конечно, это не говорит вам, действительно ли работает маршрут. Об этом я понятия не имею.

Можно просто разобрать XML. Пример содержимого файла:

<?xml version="1.0" encoding="UTF-8"?>
<TcConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <RemoteConnections>
        <Route>
            <Name>PLC_1</Name>
            <Address>192.168.1.2</Address>
            <NetId>192.168.1.2.1.1</NetId>
            <Type>TCP_IP</Type>
        </Route>
        <Route>
            <Name>PLC_2</Name>
            <Address>192.168.1.3</Address>
            <NetId>192.168.1.3.1.1</NetId>
            <Type>TCP_IP</Type>
        </Route>
    </RemoteConnections>
</TcConfig>
...