2 декабря 2000
typedef struct _RTL_USER_PROCESS_PARAMETERS {ULONG MaximumLength; ULONG Length; ULONG Flags; ULONG DebugFlags; PVOID ConsoleHandle; ULONG ConsoleFlags; HANDLE StdInputHandle; HANDLE StdOutputHandle; HANDLE StdErrorHandle; UNICODE_STRING CurrentDirectoryPath; HANDLE CurrentDirectoryHandle; UNICODE_STRING DllPath; UNICODE_STRING ImagePathName; UNICODE_STRING CommandLine; PVOID Environment; ULONG StartingPositionLeft; ULONG StartingPositionTop; ULONG Width; ULONG Height; ULONG CharWidth; ULONG CharHeight; ULONG ConsoleTextAttributes; ULONG WindowFlags; ULONG ShowWindowFlags; UNICODE_STRING WindowTitle; UNICODE_STRING DesktopName; UNICODE_STRING ShellInfo; UNICODE_STRING RuntimeData; RTL_DRIVE_LETTER_CURDIR DLCurrentDirectory[0x20];
} RTL_USER_PROCESS_PARAMETERS, *PRTL_USER_PROCESS_PARAMETERS;
MaximumLength
Максимальная длина. Нужно установить до вызова RtlCreateProcessParameters.Length
Длина структуры.Flags
Сейчас известен только один флаг: PPF_NORMALIZED (1) // Означает, что структура нормализована для вызова RtlNormalizeProcessParamsDebugFlags
ConsoleHandle
HWND консольного окна, ассоциированного с процессом (если есть).ConsoleFlags
StdInputHandle
StdOutputHandle
StdErrorHandle
CurrentDirectoryPath
Путь к текущему каталогу в DOS-формате, например: "C:\WinNT\SYSTEM32"CurrentDirectoryHandle
Хэндл объекта FILE.DllPath
Пути в DOS-формате, разделённые ';' где система ищет DLL-файлы.ImagePathName
Полный путь в DOS-формате к образу файла процесса.CommandLine
Командная строка.Environment
Указатель на блок окружения (см. RtlCreateEnvironment).StartingPositionLeft
StartingPositionTop
Width
Height
CharWidth
CharHeight
ConsoleTextAttributes
WindowFlags
ShowWindowFlags
WindowTitle
DesktopName
Имя объектов WindowStation и Desktop, к которым относится процесс.ShellInfo
RuntimeData
DLCurrentDirectory[0x20]
- ???
RTL_USER_PROCESS_PARAMETERS находятся по адресу 0x20000 (для всех процессов, созданных с помощью вызова WIN32 API функции CreateProcess).