ExpandEnvironmentStrings 函数是一个Windows API函数,用来展开包含环境变量的字符串。
函数原型为:
DWORD WINAPI ExpandEnvironmentStringsA(
LPCSTR lpSrc,
LPSTR lpDst,
DWORD nSize
);
参数说明:
lpSrc
:要展开的包含环境变量的字符串lpDst
:展开后的字符串存放的缓冲区nSize
:缓冲区的大小,以字节为单位返回值为展开后的字符串的长度,不包含null字符。如果函数失败,则返回0。
示例代码如下:
#include <Windows.h>
#include <iostream>
int main()
{
char src[] = "The system directory is %SystemRoot%\\System32";
char dst[256] = { 0 };
DWORD result = ExpandEnvironmentStringsA(src, dst, sizeof(dst));
if (result == 0)
{
std::cout << "ExpandEnvironmentStringsA failed with error code: " << GetLastError() << std::endl;
return 1;
}
std::cout << "Expanded string: " << dst << std::endl;
return 0;
}
运行结果为:
Expanded string: The system directory is C:\Windows\System32
以上代码将展开包含环境变量的字符串,并将结果存储在dst
缓冲区中。展开后的字符串可以通过dst
获取。