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 地址字符串转换为无符号整数,请调用 RtlIpv4StringToAddress 或 inet_addr 函数。 若要将无符号整数转换为 IPv4 地址字符串,请调用 RtlIpv4AddressToString 或 inet_ntoa 函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2008 [仅限桌面应用] |