NSC_AddrComponent (STRUCT) ¶ TYPE NSC_AddrComponent : STRUCT InOut: Name Type Component ARRAY [0..1] OF BYTE
NSC_CompleteNodeInfo (STRUCT) ¶ TYPE NSC_CompleteNodeInfo : STRUCT InOut: Name Type address NSC_NodeAddress info NSC_NodeInfoInt
NSC_NodeAddress (STRUCT) ¶ TYPE NSC_NodeAddress : STRUCT InOut: Name Type nAddrComponentCount UDINT AddrComponents ARRAY [0..(Constants.MaxNodeAddrLength - 1)] OF NSC_AddrComponent
NSC_NodeInfoExt (STRUCT) ¶ TYPE NSC_NodeInfoExt : STRUCT This is the structure as it is passed from the callback function InOut: Name Type Comment uiMaxChannels UINT bIntelByteOrder BOOL byDummy USINT uiParentAddrSize UINT uiNodeNameLength UINT uiDeviceNameLength UINT uiVendorNameLength UINT udiTargetType UDINT udiTargetId UDINT udiTargetVersion UDINT pDynamicLengthData POINTER TO BYTE The dynamic fields are (in this order): addrParent (wParentAddrSize NSC_AddrComponent components) followed by node name (zero terminated wide-char string) followed by device name (zero terminated wide-char string) followed by type description (zero terminated wide-char string) If wParentAddrSize is zero (i.e. node has no parent) then the node name starts immediatly at position offsetof(addrParent).
NSC_NodeInfoInt (STRUCT) ¶ TYPE NSC_NodeInfoInt : STRUCT InOut: Name Type Comment wInfoVersion UINT can be used to decide which members are valid. In case of wVersion=VersionWithoutDeviceId the vendor- and the device name will not be valid uiMaxChannels UINT bIntelByteOrder BOOL uiParentAddrSize UINT uiNodeNameLength UINT uiDeviceNameLength UINT uiVendorNameLength UINT udiTargetType UDINT udiTargetId UDINT udiTargetVersion UDINT bDynamicallyAllocatedNodeName BOOL IF True then the member pwsNodeName has to be used instead of wsNodeName! bStaticNodeNameOverflow BOOL If True then the wsNodeName will contain some data but it is cut at the end! wsNodeName WSTRING(Constants.MaxStaticNodeNameLength) fixed length wstring, only if <see cref=”bDynamicallyAllocatedNodeName”> = FALSE pwsNodeName POINTER TO WSTRING arbitrary length wstring, only if <see cref=”bDynamicallyAllocatedNodeName”> = TRUE bDynamicallyAllocatedDeviceName BOOL for the meaning <see cref=”bDynamicallyAllocatedNodeName”> bStaticDeviceNameOverflow BOOL for the meaning <see cref=”bStaticNodeNameOverflow”> wsDeviceName WSTRING(Constants.MaxStaticDeviceNameLength) fixed length wstring, only if <see cref=”bDynamicallyAllocatedDeviceName”> = FALSE pwsDeviceName POINTER TO WSTRING arbitrary length wstring, only if <see cref=”bDynamicallyAllocatedDeviceName”> = TRUE bDynamicallyAllocatedVendorName BOOL for the meaning <see cref=”bDynamicallyAllocatedNodeName”> bStaticVendorNameOverflow BOOL for the meaning <see cref=”bStaticNodeNameOverflow”> wsVendorName WSTRING(Constants.MaxStaticVendorNameLength) fixed length wstring, only if <see cref=”bDynamicallyAllocatedVendorName”> = FALSE pwsVendorName POINTER TO WSTRING arbitrary length wstring, only if <see cref=”bDynamicallyAllocatedVendorName”> = TRUE bDynamicallyAllocatedParentAddr BOOL for the meaning <see cref=”bDynamicallyAllocatedNodeName”> bStaticParentAddrOverflow BOOL for the meaning <see cref=”bStaticNodeNameOverflow”> addrParent ARRAY [0..Constants.MaxStaticParentAddrLength] OF NSC_AddrComponent fixed length array, only if <see cref=”bDynamicallyAllocatedParentAddr”> = FALSE pAddrParent POINTER TO NSC_AddrComponent arbitrary length array, only if <see cref=”bDynamicallyAllocatedParentAddr”> = TRUE
Errors (GVL) ¶ Attributes: qualified_only InOut: Name Type Initial ERR_NSC_AMBIGUOUSDEVICE UDINT 16#2201
External Functions ¶ NSClientClose (Function) NSClientOpen (Function) NSClientResolveAll (Function)
NSClientClose (FUN) ¶ FUNCTION NSClientClose : RTS_IEC_RESULT Close an instance of the nameservice client. Callbacks that arrive after the client has been closed will no longer be forwarded. Returns the result of the operation, ERR_OK if a valid instance has been given in. InOut: Scope Name Type Comment Return NSClientClose RTS_IEC_RESULT Input hNSClient RTS_IEC_HANDLE Handle of the nameservice client that is to be closed
NSClientOpen (FUN) ¶ FUNCTION NSClientOpen : RTS_IEC_HANDLE Opens an instance of the nameservice client. Returns the handle to the created name service client. InOut: Scope Name Type Comment Return NSClientOpen RTS_IEC_HANDLE Input pResult POINTER TO RTS_IEC_RESULT Will optionally receive an error code if the creation of a nameservice client has failed. Otherwise ERR_OK will be returned.
NSClientResolveAll (FUN) ¶ FUNCTION NSClientResolveAll : RTS_IEC_RESULT Initiates the resolving of all available runtimes. Returns the result of the operation. InOut: Scope Name Type Comment Return NSClientResolveAll RTS_IEC_RESULT Input hNSClient RTS_IEC_HANDLE The instance of a nameservice client that shall to do the nameresolving udiReqId __UXINT Identifies the request. pfnResponseCallback POINTER TO BYTE Prototype see NSClientResponseCallback. This callback will be triggered for each available node