TwinCAT 3.0 Broadcast search без интерфейса автоматизации

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

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

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

1 ответ

Решение

Есть файл 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>
Другие вопросы по тегам