InputType 复杂类型

定义输入数据类型。

<xs:complexType name="InputType">
    <xs:sequence>
        <xs:element name="description"
            type="string"
         />
        <xs:element name="outType"
            type="OutputType"
            minOccurs="0"
            maxOccurs="unbounded"
         />
        <xs:any
            processContents="lax"
            namespace="##other"
         />
    </xs:sequence>
    <xs:attribute name="name"
        type="QName"
        use="required"
     />
    <xs:attribute name="value"
        type="string"
        use="required"
     />
    <xs:attribute name="symbol"
        type="CSymbolType"
        use="required"
     />
</xs:complexType>

子元素

元素 类型 说明
描述 字符串 输入类型的说明。
outType OutputType 确定数据呈现方式的输出数据类型的列表。 必须至少指定一种输出类型。 如果输入类型可以呈现为不同的输出类型,请指定一个列表。 例如,输入类型 win:UInt16 可以呈现为无符号短号、端口号或十六进制数。 指定的输出类型之一必须将默认属性设置为 true。

属性

名称 类型 说明
name QName 输入类型的名称。
符号 CSymbolType 用于引用应用程序中的输入类型的符号。 消息编译器 (MC.exe) 使用 符号为编译器生成的头文件中的输入类型创建常量。
value 字符串 一个数字标识符,用于唯一标识所定义的输入类型列表中的输入类型。

备注

下面列出了可在清单中使用的已识别的输入类型。 类型在 Windows SDK 中包含的 \Include\Winmeta.xml 文件中定义。 “标准 XML 格式”列指示特定输入类型的规范类型。 “输出类型”列列出了可以呈现数据的可能格式。 如果未为数据项指定输出类型,则服务将使用列出的第一个输出类型来呈现数据。 有关输出类型的说明,请参阅 OutputType 复杂类型。

下表列出了 Winmeta.xml 文件中定义的值。

输入类型 说明 输出类型
win:AnsiString 一个包含 8 位字符的字符串。 默认情况下或与 xs:string 输出类型一起使用时,假定字符串已使用事件提供程序 ANSI 代码页进行编码。 与 win:Xml、win:Json 或 win:Utf8 输出类型一起使用时,假定字符串已使用 UTF-8 进行编码。 xs:string,
win:Xml
从 mc.exe 版本 10.0.14251 或更高版本开始:
win:Json
win:Utf8
win:UnicodeString 一个包含 16 位字符的字符串。 默认情况下,假定已使用 UTF-16LE 进行编码。 xs:string
win:Xml
从 mc.exe 版本 10.0.14251 或更高版本开始:
win:Json
win:Int8 一个有符号的 8 位整数。 与 xs:string 输出类型一起使用时,将被视为字符。 xs:byte
从 mc.exe 版本 10.0.14251 或更高版本开始:
xs:string
win:UInt8 8 位无符号整数。 与 xs:string 输出类型一起使用时,将被视为字符。 xs:unsignedByte
从 mc.exe 版本 10.0.14251 或更高版本开始:
xs:string
win:Int16 16 位有符号整数。 xs:short
win:UInt16 16 位无符号整数。 与 win:Port 输出类型一起使用时,数据被视为 big endian (网络字节顺序) 。 与 xs:string 输出类型一起使用时,将被视为字符。 xs:unsignedShort
win:Port
win:HexInt16
从 mc.exe 版本 10.0.14251 或更高版本开始:
xs:string
win:Int32 16 位有符号整数。 xs:int
win:HResult
win:UInt32 32 位无符号整数。 xs:unsignedInt
win:PID
win:TID
win:IPv4
win:ETWTIME
win:Win32Error
win:NTSTATUS
win:HexInt32
win:Int64 64 位有符号整数。 xs:long
win:UInt64 64 位无符号整数。 xs:unsignedLong
win:ETWTIME
win:HexInt64
win:Float IEEE 4 字节浮点数。 xs:float
win:Double IEEE 8 字节浮点数。 xs:double
win:Boolean 一个 32 位值,其中 0 为 false,1 为 true。 xs:boolean
win:Binary 可变大小的二进制数据。 必须在数据定义中将大小指定为常量或对另一个 (整数) 数据项的引用。对于 IP V6 地址,数据应该是 IN6_ADDR 结构。
对于套接字地址,数据应该是SOCKADDR_STORAGE结构。 支持AF_INET、AF_INET6和AF_LINK地址系列。
从 mc.exe版本 10.0.14251 或更高版本开始,二进制数据可以使用输出类型 win:Pkcs7WithTypeInfo。 此数据应该是 PKCS#7 消息 (例如加密和/或签名数据) 。 可以选择在 PKCS#7 消息后跟指示内部内容类型的 TraceLogging 类型信息。 如果存在,TraceLogging 类型信息应紧跟 PKCS#7 消息 (即类型信息不包含在 PKCS#7 内容) 中。 若要指定内部内容的输入类型,请将一个字节与 TraceLoggingProvider.h) 中定义的TlgIn_t枚举 (的值追加。 若要指定内部内容的输入和输出类型,请使用TlgIn_t枚举中的值追加一个字节,并设置高位字节,并使用TlgOut_t枚举中的值追加第二个字节。
xs:hexBinary
win:IPv6
win:SocketAddress
从 mc.exe 版本 10.0.14251 或更高版本开始:
win:Pkcs7WithTypeInfo
win:GUID GUID 结构。 在输出时,GUID 以注册表字符串形式 {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}呈现。 xs:GUID
win:Pointer 无符号 32 位或 64 位指针值。 大小取决于记录事件的计算机的体系结构。 win:HexInt64
win:FILETIME FILETIME 结构,8 字节。 xs:dateTime
win:DateTimeCultureInsensitive
win:SYSTEMTIME SYSTEMTIME 结构,16 字节。 xs:dateTime
win:DateTimeCultureInsensitive
win:SID 安全标识符 (SID) 结构中唯一标识用户或组。 输出时,SID 使用 ConvertSidToStringSid 函数以字符串形式呈现。 xs:string
win:HexInt32 无符号 32 位整数的十六进制表示形式 win:HexInt32
win:Win32Error
win:NTSTATUS
win:HexInt64 无符号 64 位整数的十六进制表示形式。 win:HexInt64

如果使用 win:UInt32 存储 IPv4 地址,则该值必须采用网络字节顺序。 若要按网络字节顺序将 IPv4 地址字符串转换为无符号整数,请调用 RtlIpv4StringToAddressinet_addr 函数。 若要将无符号整数转换为 IPv4 地址字符串,请调用 RtlIpv4AddressToStringinet_ntoa 函数。

要求

要求
最低受支持的客户端
Windows Vista [仅限桌面应用]
最低受支持的服务器
Windows Server 2008 [仅限桌面应用]