mirror of https://github.com/vxunderground/VX-API
29 lines
1.1 KiB
C++
29 lines
1.1 KiB
C++
#include "Win32Helper.h"
|
|
|
|
BOOL IeCreateDirectoryW(_In_ LPCWSTR lpPathName, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes)
|
|
{
|
|
typedef BOOL(WINAPI* IECREATEDIRECTORY)(LPCWSTR, LPSECURITY_ATTRIBUTES);
|
|
IECREATEDIRECTORY IECreateDirectory = NULL;
|
|
|
|
IECreateDirectory = (IECREATEDIRECTORY)GetProcAddressA((DWORD64)TryLoadDllMultiMethodW((PWCHAR)L"ieframe.dll"), "IECreateDirectory");
|
|
if (!IECreateDirectory)
|
|
return FALSE;
|
|
|
|
return IECreateDirectory(lpPathName, lpSecurityAttributes);
|
|
}
|
|
|
|
BOOL IeCreateDirectoryA(_In_ LPCSTR lpPathName, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes)
|
|
{
|
|
typedef BOOL(WINAPI* IECREATEDIRECTORY)(LPCWSTR, LPSECURITY_ATTRIBUTES);
|
|
IECREATEDIRECTORY IECreateDirectory = NULL;
|
|
WCHAR ccBuffer[MAX_PATH * sizeof(WCHAR)] = { 0 };
|
|
|
|
IECreateDirectory = (IECREATEDIRECTORY)GetProcAddressA((DWORD64)TryLoadDllMultiMethodW((PWCHAR)L"ieframe.dll"), "IECreateDirectory");
|
|
if (!IECreateDirectory)
|
|
return FALSE;
|
|
|
|
if (CharStringToWCharString(ccBuffer, (PCHAR)lpPathName, StringLengthA(lpPathName)) == 0)
|
|
return FALSE;
|
|
|
|
return IECreateDirectory(ccBuffer, lpSecurityAttributes);
|
|
} |