官网提供了例程,官网真是个宝库。基本ADS的操作都里面有例程了,但是可能会稍微分散一点,不过多看几遍,也就慢慢整理你所需要的东西出来了。
https://infosys.beckhoff.com/index_en.htm
1 #include <Windows.h> 2 #include <conio.h> 3 #include <winbase.h> 4 5 #include <TcAdsDef.h> 6 #include <TcAdsAPI.h> 7 8 void myPAdsNotificationFuncEx(AmsAddr* pAddr, 9 AdsNotificationHeader* pNotification, 10 unsigned long hUser 11 ) 12 { 13 SYSTEMTIME SystemTime, LocalTime; 14 FILETIME FileTime; 15 LARGE_INTEGER LargeInteger; 16 TIME_ZONE_INFORMATION TimeZoneInformation; 17 18 // Convert the timestamp into SYSTEMTIME 19 LargeInteger.QuadPart = pNotification->nTimeStamp; 20 FileTime.dwLowDateTime = (DWORD)LargeInteger.LowPart; 21 FileTime.dwHighDateTime = (DWORD)LargeInteger.HighPart; 22 FileTimeToSystemTime(&FileTime, &SystemTime); 23 24 // Convert the time value Zeit to local time 25 GetTimeZoneInformation(&TimeZoneInformation); 26 SystemTimeToTzSpecificLocalTime(&TimeZoneInformation, &SystemTime, &LocalTime); 27 28 // Print out the timestamp 29 qDebug() << LocalTime.wHour << ":" 30 << LocalTime.wMinute << ":" 31 << LocalTime.wSecond << '.' 32 << LocalTime.wMilliseconds; 33 34 //这样子不行,貌似Qt不支持这种timeStamp 35 //qDebug() << QDateTime::fromTime_t(pNotification->nTimeStamp); 36 }
标签:SystemTime,读取,例程,FileTime,TimeZoneInformation,TwinCAT3,LargeInteger,include,Qt From: https://www.cnblogs.com/ybqjymy/p/17604982.html