Поделиться через


Функция ExpandEnvironmentStringsForUserW (userenv.h)

Развертывает исходную строку с помощью блока среды, установленного для указанного пользователя.

Синтаксис

USERENVAPI BOOL ExpandEnvironmentStringsForUserW(
  [in, optional] HANDLE  hToken,
  [in]           LPCWSTR lpSrc,
  [out]          LPWSTR  lpDest,
  [in]           DWORD   dwSize
);

Параметры

[in, optional] hToken

Тип: HANDLE

Токен пользователя, возвращенныйLogonUser, CreateRestrictedToken, Дубликат, OpenProcessTokenили функцию OpenThreadToken. Маркер должен иметь TOKEN_IMPERSONATE и TOKEN_QUERY доступ. Кроме того, по состоянию на Windows 7 маркер также должен иметь TOKEN_DUPLICATE доступ. Дополнительные сведения см. в разделе Access Rights for Access-Token Objects.

Если hTokenNULL, блок среды содержит только системные переменные.

[in] lpSrc

Тип: LPCTSTR

Указатель на строку источника, завершаемую значением NULL.

[out] lpDest

Тип: LPTSTR

Указатель на буфер, получающий развернутые строки.

[in] dwSize

Тип: DWORD

Задает размер буфера lpDest в TCHARs.

Возвращаемое значение

Тип: BOOL

TRUE в случае успешного выполнения; в противном случае FALSE. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.

Замечания

Ниже приведен пример исходной строки:

%USERPROFILE%\ntuser.dat

Когда ExpandEnvironmentStringsForUser возвращается, строка назначения расширяется следующим образом:

C:\Documents and Settings\UserName\ntuser.dat

Заметка

Заголовок userenv.h определяет ExpandEnvironmentStringsForUser как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка userenv.h
библиотеки Userenv.lib
DLL Userenv.dll

См. также

Обзор профилей пользователей

Справочник по профилям пользователей