1 #[link(name = "windows")]
3 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
4 pub fn AmsiCloseSession(amsicontext
: HAMSICONTEXT
, amsisession
: HAMSISESSION
);
5 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
6 pub fn AmsiInitialize(appname
: ::windows_sys
::core
::PCWSTR
, amsicontext
: *mut HAMSICONTEXT
) -> ::windows_sys
::core
::HRESULT
;
7 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
8 pub fn AmsiNotifyOperation(amsicontext
: HAMSICONTEXT
, buffer
: *const ::core
::ffi
::c_void
, length
: u32, contentname
: ::windows_sys
::core
::PCWSTR
, result
: *mut AMSI_RESULT
) -> ::windows_sys
::core
::HRESULT
;
9 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
10 pub fn AmsiOpenSession(amsicontext
: HAMSICONTEXT
, amsisession
: *mut HAMSISESSION
) -> ::windows_sys
::core
::HRESULT
;
11 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
12 pub fn AmsiScanBuffer(amsicontext
: HAMSICONTEXT
, buffer
: *const ::core
::ffi
::c_void
, length
: u32, contentname
: ::windows_sys
::core
::PCWSTR
, amsisession
: HAMSISESSION
, result
: *mut AMSI_RESULT
) -> ::windows_sys
::core
::HRESULT
;
13 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
14 pub fn AmsiScanString(amsicontext
: HAMSICONTEXT
, string
: ::windows_sys
::core
::PCWSTR
, contentname
: ::windows_sys
::core
::PCWSTR
, amsisession
: HAMSISESSION
, result
: *mut AMSI_RESULT
) -> ::windows_sys
::core
::HRESULT
;
15 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
16 pub fn AmsiUninitialize(amsicontext
: HAMSICONTEXT
);
17 #[doc = "*Required features: `\"Win32_System_Antimalware\"`, `\"Win32_Foundation\"`*"]
18 #[cfg(feature = "Win32_Foundation")]
19 pub fn InstallELAMCertificateInfo(elamfile
: super::super::Foundation
::HANDLE
) -> super::super::Foundation
::BOOL
;
21 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
22 pub type AMSI_ATTRIBUTE
= i32;
23 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
24 pub const AMSI_ATTRIBUTE_APP_NAME
: AMSI_ATTRIBUTE
= 0i32;
25 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
26 pub const AMSI_ATTRIBUTE_CONTENT_NAME
: AMSI_ATTRIBUTE
= 1i32;
27 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
28 pub const AMSI_ATTRIBUTE_CONTENT_SIZE
: AMSI_ATTRIBUTE
= 2i32;
29 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
30 pub const AMSI_ATTRIBUTE_CONTENT_ADDRESS
: AMSI_ATTRIBUTE
= 3i32;
31 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
32 pub const AMSI_ATTRIBUTE_SESSION
: AMSI_ATTRIBUTE
= 4i32;
33 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
34 pub const AMSI_ATTRIBUTE_REDIRECT_CHAIN_SIZE
: AMSI_ATTRIBUTE
= 5i32;
35 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
36 pub const AMSI_ATTRIBUTE_REDIRECT_CHAIN_ADDRESS
: AMSI_ATTRIBUTE
= 6i32;
37 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
38 pub const AMSI_ATTRIBUTE_ALL_SIZE
: AMSI_ATTRIBUTE
= 7i32;
39 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
40 pub const AMSI_ATTRIBUTE_ALL_ADDRESS
: AMSI_ATTRIBUTE
= 8i32;
41 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
42 pub const AMSI_ATTRIBUTE_QUIET
: AMSI_ATTRIBUTE
= 9i32;
43 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
44 pub type AMSI_RESULT
= i32;
45 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
46 pub const AMSI_RESULT_CLEAN
: AMSI_RESULT
= 0i32;
47 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
48 pub const AMSI_RESULT_NOT_DETECTED
: AMSI_RESULT
= 1i32;
49 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
50 pub const AMSI_RESULT_BLOCKED_BY_ADMIN_START
: AMSI_RESULT
= 16384i32;
51 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
52 pub const AMSI_RESULT_BLOCKED_BY_ADMIN_END
: AMSI_RESULT
= 20479i32;
53 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
54 pub const AMSI_RESULT_DETECTED
: AMSI_RESULT
= 32768i32;
55 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
56 pub type AMSI_UAC_MSI_ACTION
= i32;
57 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
58 pub const AMSI_UAC_MSI_ACTION_INSTALL
: AMSI_UAC_MSI_ACTION
= 0i32;
59 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
60 pub const AMSI_UAC_MSI_ACTION_UNINSTALL
: AMSI_UAC_MSI_ACTION
= 1i32;
61 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
62 pub const AMSI_UAC_MSI_ACTION_UPDATE
: AMSI_UAC_MSI_ACTION
= 2i32;
63 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
64 pub const AMSI_UAC_MSI_ACTION_MAINTENANCE
: AMSI_UAC_MSI_ACTION
= 3i32;
65 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
66 pub const AMSI_UAC_MSI_ACTION_MAX
: AMSI_UAC_MSI_ACTION
= 4i32;
68 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
69 pub struct AMSI_UAC_REQUEST_AX_INFO
{
71 pub lpwszLocalInstallPath
: ::windows_sys
::core
::PWSTR
,
72 pub lpwszSourceURL
: ::windows_sys
::core
::PWSTR
,
74 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_AX_INFO {}
75 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_AX_INFO
{
76 fn clone(&self) -> Self {
81 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
82 pub struct AMSI_UAC_REQUEST_COM_INFO
{
84 pub lpwszServerBinary
: ::windows_sys
::core
::PWSTR
,
85 pub lpwszRequestor
: ::windows_sys
::core
::PWSTR
,
86 pub Clsid
: ::windows_sys
::core
::GUID
,
88 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_COM_INFO {}
89 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_COM_INFO
{
90 fn clone(&self) -> Self {
95 #[doc = "*Required features: `\"Win32_System_Antimalware\"`, `\"Win32_Foundation\"`*"]
96 #[cfg(feature = "Win32_Foundation")]
97 pub struct AMSI_UAC_REQUEST_CONTEXT
{
99 pub ulRequestorProcessId
: u32,
100 pub UACTrustState
: AMSI_UAC_TRUST_STATE
,
101 pub Type
: AMSI_UAC_REQUEST_TYPE
,
102 pub RequestType
: AMSI_UAC_REQUEST_CONTEXT_0
,
103 pub bAutoElevateRequest
: super::super::Foundation
::BOOL
,
105 #[cfg(feature = "Win32_Foundation")]
106 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_CONTEXT {}
107 #[cfg(feature = "Win32_Foundation")]
108 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_CONTEXT
{
109 fn clone(&self) -> Self {
114 #[doc = "*Required features: `\"Win32_System_Antimalware\"`, `\"Win32_Foundation\"`*"]
115 #[cfg(feature = "Win32_Foundation")]
116 pub union AMSI_UAC_REQUEST_CONTEXT_0
{
117 pub ExeInfo
: AMSI_UAC_REQUEST_EXE_INFO
,
118 pub ComInfo
: AMSI_UAC_REQUEST_COM_INFO
,
119 pub MsiInfo
: AMSI_UAC_REQUEST_MSI_INFO
,
120 pub ActiveXInfo
: AMSI_UAC_REQUEST_AX_INFO
,
121 pub PackagedAppInfo
: AMSI_UAC_REQUEST_PACKAGED_APP_INFO
,
123 #[cfg(feature = "Win32_Foundation")]
124 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_CONTEXT_0 {}
125 #[cfg(feature = "Win32_Foundation")]
126 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_CONTEXT_0
{
127 fn clone(&self) -> Self {
132 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
133 pub struct AMSI_UAC_REQUEST_EXE_INFO
{
135 pub lpwszApplicationName
: ::windows_sys
::core
::PWSTR
,
136 pub lpwszCommandLine
: ::windows_sys
::core
::PWSTR
,
137 pub lpwszDLLParameter
: ::windows_sys
::core
::PWSTR
,
139 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_EXE_INFO {}
140 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_EXE_INFO
{
141 fn clone(&self) -> Self {
146 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
147 pub struct AMSI_UAC_REQUEST_MSI_INFO
{
149 pub MsiAction
: AMSI_UAC_MSI_ACTION
,
150 pub lpwszProductName
: ::windows_sys
::core
::PWSTR
,
151 pub lpwszVersion
: ::windows_sys
::core
::PWSTR
,
152 pub lpwszLanguage
: ::windows_sys
::core
::PWSTR
,
153 pub lpwszManufacturer
: ::windows_sys
::core
::PWSTR
,
154 pub lpwszPackagePath
: ::windows_sys
::core
::PWSTR
,
155 pub lpwszPackageSource
: ::windows_sys
::core
::PWSTR
,
157 pub ppwszUpdates
: *mut ::windows_sys
::core
::PWSTR
,
158 pub ppwszUpdateSources
: *mut ::windows_sys
::core
::PWSTR
,
160 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_MSI_INFO {}
161 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_MSI_INFO
{
162 fn clone(&self) -> Self {
167 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
168 pub struct AMSI_UAC_REQUEST_PACKAGED_APP_INFO
{
170 pub lpwszApplicationName
: ::windows_sys
::core
::PWSTR
,
171 pub lpwszCommandLine
: ::windows_sys
::core
::PWSTR
,
172 pub lpPackageFamilyName
: ::windows_sys
::core
::PWSTR
,
173 pub lpApplicationId
: ::windows_sys
::core
::PWSTR
,
175 impl ::core
::marker
::Copy
for AMSI_UAC_REQUEST_PACKAGED_APP_INFO {}
176 impl ::core
::clone
::Clone
for AMSI_UAC_REQUEST_PACKAGED_APP_INFO
{
177 fn clone(&self) -> Self {
181 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
182 pub type AMSI_UAC_REQUEST_TYPE
= i32;
183 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
184 pub const AMSI_UAC_REQUEST_TYPE_EXE
: AMSI_UAC_REQUEST_TYPE
= 0i32;
185 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
186 pub const AMSI_UAC_REQUEST_TYPE_COM
: AMSI_UAC_REQUEST_TYPE
= 1i32;
187 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
188 pub const AMSI_UAC_REQUEST_TYPE_MSI
: AMSI_UAC_REQUEST_TYPE
= 2i32;
189 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
190 pub const AMSI_UAC_REQUEST_TYPE_AX
: AMSI_UAC_REQUEST_TYPE
= 3i32;
191 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
192 pub const AMSI_UAC_REQUEST_TYPE_PACKAGED_APP
: AMSI_UAC_REQUEST_TYPE
= 4i32;
193 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
194 pub const AMSI_UAC_REQUEST_TYPE_MAX
: AMSI_UAC_REQUEST_TYPE
= 5i32;
195 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
196 pub type AMSI_UAC_TRUST_STATE
= i32;
197 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
198 pub const AMSI_UAC_TRUST_STATE_TRUSTED
: AMSI_UAC_TRUST_STATE
= 0i32;
199 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
200 pub const AMSI_UAC_TRUST_STATE_UNTRUSTED
: AMSI_UAC_TRUST_STATE
= 1i32;
201 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
202 pub const AMSI_UAC_TRUST_STATE_BLOCKED
: AMSI_UAC_TRUST_STATE
= 2i32;
203 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
204 pub const AMSI_UAC_TRUST_STATE_MAX
: AMSI_UAC_TRUST_STATE
= 3i32;
205 pub const CAntimalware
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 4256173650, data2: 41492, data3: 19105, data4: [143, 186, 67, 87, 187, 0, 114, 236] }
;
206 pub type HAMSICONTEXT
= isize;
207 pub type HAMSISESSION
= isize;
208 pub type IAmsiStream
= *mut ::core
::ffi
::c_void
;
209 pub type IAntimalware
= *mut ::core
::ffi
::c_void
;
210 pub type IAntimalware2
= *mut ::core
::ffi
::c_void
;
211 pub type IAntimalwareProvider
= *mut ::core
::ffi
::c_void
;
212 pub type IAntimalwareProvider2
= *mut ::core
::ffi
::c_void
;
213 pub type IAntimalwareUacProvider
= *mut ::core
::ffi
::c_void
;