TwinCAT 3.0 Широковещательный поиск без интерфейса автоматизации

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

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

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


person nohupper    schedule 22.10.2019    source источник


Ответы (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>
person Quirzo    schedule 23.10.2019
comment
Идеальный! Вчера я потратил весь день на кодирование библиотеки, чтобы сделать это с помощью интерфейса автоматизации. Теперь я могу удалить все это. Просто анализ XML-файла намного лучше. Большое спасибо! - person nohupper; 23.10.2019