|
本帖最后由 plusv 于 2021-1-6 19:20 编辑
NtEnumerateBootEntries(
OUT PVOID Buffer,
IN OUT PULONG BufferLength
);
Routine Description:
This function returns a list of all existing boot entries.
N.B. This service requires the system environment privilege.
Arguments:
Buffer - Supplies the address of the buffer that is to receive the
returned data. The returned data is a sequence of BOOT_ENTRY_LIST
structures.
BufferLength - On input, supplies the length in bytes of the buffer.
On output, returns the length in bytes of the returned data.
If the input buffer is large enough, then BufferLength indicates
the amount of data copied into Buffer. If the input buffer
is too small, then BufferLength indicates the required buffer length.
Return Value:
STATUS_SUCCESS The function succeeded.
STATUS_BUFFER_TOO_SMALL The input buffer was too small.
STATUS_INVALID_PARAMETER One of the parameters is invalid.
STATUS_NOT_IMPLEMENTED This function is not supported on this platform.
STATUS_UNSUCCESSFUL The firmware returned an unrecognized error.
STATUS_PRIVILEGE_NOT_HELD The caller does not have the required privilege.
STATUS_ACCESS_VIOLATION One of the input parameters cannot be read,
or one of the output parameters cannot be written.
==================================================================================
NtQueryBootOptions(
OUT PBOOT_OPTIONS BootOptions,
IN OUT PULONG BootOptionsLength
);
Routine Description:
This function returns the system's global boot options.
N.B. This service requires the system environment privilege.
Arguments:
BootOptions - Supplies the address of the buffer that is to receive the
returned data.
BootOptionsLength - On input, supplies the length in bytes of the buffer.
On output, returns the length in bytes of the returned data.
If the input buffer is large enough, then BootOptionsLength indicates
the amount of data copied into BootOptions. If the input buffer
is too small, then BootOptionsLength indicates the required buffer
length.
Return Value:
STATUS_SUCCESS The function succeeded.
STATUS_BUFFER_TOO_SMALL The input buffer was too small.
STATUS_INVALID_PARAMETER One of the parameters is invalid.
STATUS_NOT_IMPLEMENTED This function is not supported on this platform.
STATUS_UNSUCCESSFUL The firmware returned an unrecognized error.
STATUS_PRIVILEGE_NOT_HELD The caller does not have the required privilege.
STATUS_ACCESS_VIOLATION One of the input parameters cannot be read,
or one of the output parameters cannot be written.
==================================================================================
NtQueryBootEntryOrder(
OUT PULONG Ids,
IN OUT PULONG Count
);
Routine Description:
This function returns the system boot order list.
N.B. This service requires the system environment privilege.
Arguments:
Ids - Supplies the address of the buffer that is to receive the
returned data. The returned data is an array of ULONG boot
entry identifiers.
Count - On input, supplies the length in ULONGs of the buffer.
On output, returns the length in ULONGs of the returned data.
If the input buffer is large enough, then Count indicates
the amount of data copied into Buffer. If the input buffer
is too small, then Count indicates the required buffer length.
Return Value:
STATUS_SUCCESS The function succeeded.
STATUS_BUFFER_TOO_SMALL The input buffer was too small.
STATUS_INVALID_PARAMETER One of the parameters is invalid.
STATUS_NOT_IMPLEMENTED This function is not supported on this platform.
STATUS_UNSUCCESSFUL The firmware returned an unrecognized error.
STATUS_PRIVILEGE_NOT_HELD The caller does not have the required privilege.
STATUS_ACCESS_VIOLATION One of the input parameters cannot be read,
or one of the output parameters cannot be written.
|
|