[ RtlGenRandom 函数可用于“要求”部分中指定的作系统。 在后续版本中可能会更改或不可用。 请改用 BCryptGenRandom 或 ProcessPrng 函数。]
RtlGenRandom 函数生成伪随机数。
注意 此函数没有关联的导入库。 此函数可用作 Advapi32.dll中名为 SystemFunction036 的资源。 必须使用 LoadLibrary 和 GetProcAddress 函数动态链接到 Advapi32.dll。
Syntax
BOOLEAN RtlGenRandom(
[out] PVOID RandomBuffer,
[in] ULONG RandomBufferLength
);
参数
[out] RandomBuffer
指向接收随机数作为二进制数据的缓冲区的指针。 此缓冲区的大小由 RandomBufferLength 参数指定。
[in] RandomBufferLength
RandomBuffer 缓冲区的长度(以字节为单位)。
返回值
如果函数成功,该函数将返回 TRUE。
如果函数失败,则返回 FALSE。
注解
使用完随机数后,通过调用 SecureZeroMemory 函数释放 RandomBuffer 缓冲区。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows XP [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2003 [仅限桌面应用] |
| 目标平台 | Windows操作系统 |
| Header | ntsecapi.h |
| DLL | Advapi32.dll |