Wonderware System Platform.Как получить DateTime с удаленного ПК? - PullRequest
0 голосов
/ 31 мая 2018

Как получить системное время с удаленного ПК в локальной сети в InTouch Scriptng или QuickScript.NET в Archestra IDE?

1 Ответ

0 голосов
/ 31 мая 2018

Вы должны быть в состоянии получить любой из ответов здесь: Получить дату на удаленном ПК?

Пример QuickScript.NET

Первый, Импортируйте System.Management DLL из C:\Windows\Microsoft.NET\Framework\v4.0.30319 или из любого места, где она находится, как библиотеку функций скрипта.

После этого используйте этот скрипт и настройте его под свои нужды:

(у меня былоэто в графике ArchestrA с 2 текстовыми полями, datestring и timestring были тегами, привязанными к экранным объектам.

Условие сценария: Пока refresh == True:

dim pcname as System.String;
dim wmipath as System.String;
dim scope as System.Management.ManagementScope;
dim query as System.Management.ObjectQuery;
dim search as System.Management.ManagementObjectSearcher;

try
    pcname = "192.168.10.190";

    wmipath = System.String.Format("\\{0}\root\CIMV2", pcname);
    scope = new System.Management.ManagementScope(wmipath);
    query = new System.Management.ObjectQuery("SELECT * FROM Win32_LocalTime");

    scope.Connect();
    search = new System.Management.ManagementObjectSearcher(scope, query);

    dim queryObj as System.Management.ManagementObject;
    for each queryObj in search.Get()
        datestring = System.String.Format("{0}-{1}-{2}", queryObj("Year"), queryObj("Month"), queryObj("Day"));
        timestring = System.String.Format("{0}:{1}:{2}", queryObj("Hour"), queryObj("Minute"), queryObj("Second"));

        LogMessage(datestring + " " + timestring);
    next;
catch
    LogError(error);
endtry;

refresh = false;
...