AmsiNotifyOperation function (amsi.h)
Sends to the antimalware provider a notification of an arbitrary operation. The notification doesn't imply the request of an antivirus scan. Rather, IAntimalwareProvider2::Notify is designed to provide a quick and lightweight mechanism to communicate to the antimalware provider that an event has taken place. In general, the antimalware provider should process the notification, and return to the caller as quickly as possible.
Syntax
HRESULT AmsiNotifyOperation(
HAMSICONTEXT amsiContext,
PVOID buffer,
ULONG length,
LPCWSTR contentName,
AMSI_RESULT *result
);
Parameters
amsiContext
Type: _In_ HAMSICONTEXT
The handle (of type HAMSICONTEXT) that was initially received from AmsiInitialize.
buffer
Type: _In_reads_bytes_(length) PVOID
The buffer that contains the notification data.
length
Type: _In_ ULONG
The length, in bytes, of the data to be read from buffer.
contentName
Type: _In_opt_ LPCWSTR
The filename, URL, unique script ID, or similar of the content being scanned.
result
Type: _Out_ AMSI_RESULT*
The result of the scan.
You should use AmsiResultIsMalware to determine whether the content should be blocked.
Return value
If this function succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 10 [desktop apps only] |
Minimum supported server | Windows Server 2016 [desktop apps only] |
Target Platform | Windows |
Header | amsi.h |
Library | Amsi.lib |
DLL | Amsi.dll |