IAmsiStream::GetAttribute 方法 (amsi.h)
从流中返回请求的属性。
语法
HRESULT GetAttribute(
[in] AMSI_ATTRIBUTE attribute,
[in] ULONG dataSize,
[out] unsigned char *data,
[out] ULONG *retData
);
参数
[in] attribute
指定要返回的属性的类型。 请参阅“备注”。
[in] dataSize
输出缓冲区的大小 ,数据,以字节为单位。
[out] data
用于接收所请求属性的缓冲区。 必须将数据设置为其大小(以字节为单位)。
[out] retData
数据中返回的字节数。 如果此方法返回 E_NOT_SUFFICIENT_BUFFER, 则 retData 包含所需的字节数。
返回值
此方法可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
成功。 |
|
不支持 特性。 |
|
数据指示的输出缓冲区大小不够大。 retData 包含所需的字节数。 |
|
一个或多个参数无效。 |
|
对象未初始化。 |
注解
根据 属性中请求的属性,应将以下数据复制到 数据:
attribute | data |
---|---|
AMSI_ATTRIBUTE_APP_NAME | 从 LPWSTR 复制的调用应用程序的名称、版本或 GUID 字符串。 |
AMSI_ATTRIBUTE_CONTENT_NAME | 从 LPWSTR 复制的文件名、URL、唯一脚本 ID 或类似内容。 |
AMSI_ATTRIBUTE_CONTENT_SIZE | 输入的大小,作为 ULONGLONG。 |
AMSI_ATTRIBUTE_CONTENT_ADDRESS | 如果内容已完全加载到内存中,则为内存地址。 |
AMSI_ATTRIBUTE_SESSION | 会话用于关联不同的扫描调用,例如要扫描的内容是否属于同一原始脚本。 如果内容是自包含的,则返回 nullptr 。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2016 [仅限桌面应用] |
目标平台 | Windows |
标头 | amsi.h |