获取此节点的节点名称。无论 FIX 是否在运行,此函数都会起作用。
语法
Function FixGetMyname (Myname, MaxSize)
属性
FixGetMyname 函数语法包括以下组成部分:
组成部分
|
描述
|
对象
|
对象表达式,其值为“应用到”列表中的一个对象。
|
Myname
|
字符串。返回当前节点的名称。
|
MaxSize
|
长整型。要在 Myname 中返回的最大大小(以字节为单位)。
|
返回值
长整型。
值
|
描述
|
FTK_OK
|
成功。
|
FTK_BAD_LENGTH
|
字符串长度太小。
|
FTK_NODENAME_NOT_DEFINED
|
没有为此节点定义节点名称。
|
FTK_BAD_MHANDLE
|
指向所传入的不可写内存的指针。
|
FTK_NO_MESSAGE
|
错误不存在相应的消息。
|
FTK_BAD_LENGTH
|
字符串长度太小。
|
备注
MyName (MaxSize) 的最大大小为 NODE_NAME_SIZE。
在调用 FixGetMyName 之前,必须将 MyName 参数声明为 9 个字符的固定长度字符串。例如,通过以下方式初始化 MyName 参数:
Dim Myname As String * 9 'init variable
Myname = " " 'clear variable before usage
当 Myname 字符串(节点名称)的长度未达到最大大小(9 个字符)时,返回的字符串将包含 NULL。]要从 VBA 字符串中删除 NULL,您可以使用以下代码段:
rtn = FixGetMyname(Myname, 9)
StrMyNode = ""
For i = 1 To len(Myname)
rtn = Mid(Myname, i, 1)
If Asc(rtn) >= 65 And (Asc(rtn) <= 95) Then 'check if I'm Alpha
StrMyNode = StrMyNode & rtn
Else
If Asc(rtn) >= 48 And (Asc(rtn) <= 57) Then 'Check if I'm numeric
StrMyNode = StrMyNode & rtn
End If
End If
Next i
此外,您可能需要检查字符,例如,节点名称中使用的下划线 (_) 和其他有效字符。上一个示例假设您的节点名称只包含字符 A 到 Z 或数字 1 到 9。