Files
vxunderground-VX-API/VX-API/GetCurrentDirectoryEx.cpp
T
vxunderground 86ca3658a5 update
2022-09-10 13:20:38 -05:00

24 lines
821 B
C++

#include "Win32Helper.h"
DWORD GetCurrentDirectoryExA(DWORD nBufferLength, PCHAR lpBuffer)
{
PRTL_USER_PROCESS_PARAMETERS ProcessParameters = GetPeb()->ProcessParameters;
if (ProcessParameters->CurrentDirectory.DosPath.Length > nBufferLength)
return 0;
return (DWORD)WCharStringToCharString(lpBuffer, ProcessParameters->CurrentDirectory.DosPath.Buffer, ProcessParameters->CurrentDirectory.DosPath.MaximumLength);
}
DWORD GetCurrentDirectoryExW(DWORD nBufferLength, PWCHAR lpBuffer)
{
PRTL_USER_PROCESS_PARAMETERS ProcessParameters = GetPeb()->ProcessParameters;
if (ProcessParameters->CurrentDirectory.DosPath.Length > nBufferLength)
return 0;
if (StringCopyW(lpBuffer, ProcessParameters->CurrentDirectory.DosPath.Buffer) == NULL)
return 0;
return ProcessParameters->CurrentDirectory.DosPath.Length;
}