Files
vxunderground-VX-API/VX-API/CreateProcessFromIeFrameOpenUrl.cpp
vxunderground 0ee9d00a95 Version: 2.0.684
Version: 2.0.684
2023-03-04 15:39:23 -06:00

59 lines
1.1 KiB
C++

#include "Win32Helper.h"
BOOL CreateProcessFromIeFrameOpenUrlW(LPCWSTR PathToUrlFile)
{
typedef VOID(WINAPI* OPENURL)(HWND, HINSTANCE, LPCSTR);
OPENURL OpenUrl = NULL;
HMODULE hMod = NULL;
BOOL bFlag = FALSE;
CHAR ccPathToUrlFile[MAX_PATH] = { 0 };
if (WCharStringToCharString(ccPathToUrlFile, (PWCHAR)PathToUrlFile, StringLengthW(PathToUrlFile)) == 0)
goto EXIT_ROUTINE;
hMod = LoadLibraryW(L"ieframe.dll");
if (hMod == NULL)
goto EXIT_ROUTINE;
OpenUrl = (OPENURL)GetProcAddressA((DWORD64)hMod, "OpenURL");
if (!OpenUrl)
goto EXIT_ROUTINE;
OpenUrl(NULL, NULL, ccPathToUrlFile);
bFlag = TRUE;
EXIT_ROUTINE:
if (hMod)
FreeLibrary(hMod);
return bFlag;
}
BOOL CreateProcessFromIeFrameOpenUrlA(LPCSTR PathToUrlFile)
{
typedef VOID(WINAPI* OPENURL)(HWND, HINSTANCE, LPCSTR);
OPENURL OpenUrl = NULL;
HMODULE hMod = NULL;
BOOL bFlag = FALSE;
hMod = LoadLibraryW(L"ieframe.dll");
if (hMod == NULL)
goto EXIT_ROUTINE;
OpenUrl = (OPENURL)GetProcAddressA((DWORD64)hMod, "OpenUrl");
if (!OpenUrl)
goto EXIT_ROUTINE;
OpenUrl(NULL, NULL, PathToUrlFile);
bFlag = TRUE;
EXIT_ROUTINE:
if (hMod)
FreeLibrary(hMod);
return bFlag;
}