Форум программистов, компьютерный форум, киберфорум
Наши страницы

Для чего используется DLL? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Какую GUI библиотеку выбрать? http://www.cyberforum.ru/cpp/thread1264407.html
Библиотеки визуальных компонентов очень громоздки, особенно Qt - 10 мб Hello World смех, да и только. Руганный-переруганный C++ Builder 2003 года и то создаёт лишь 600 кб файл. Есть нормального...
C++ Функция не выполняет изменение переменной, на нажатие левой клавиши мыши #include <allegro5\allegro.h> #include <allegro5\allegro_font.h> #include <allegro5\allegro_ttf.h> #include <allegro5\allegro_native_dialog.h> int A = { 0, 0, 0 }; void SECOND(... http://www.cyberforum.ru/cpp/thread1262272.html
Не скачивается Libcurl 7.19.3 с официального сайта C++
Не качает libcurl 7.19.3 - http://curl.haxx.se/download/libcurl-7.19.3-win32-ssl-msvc.zip. Обновляют, или у них что-то не так?
C++ Qt Creator. Все "за" и "против"
Доброго времени суток, форумчане! Сегодня задался вопросом использования такой IDE, как Qt Creator. Суть темы заключается в том, что я хотел бы узнать ваше мнение о сей IDE. Какие вы видите в ней...
C++ Vecor и shared_ptr http://www.cyberforum.ru/cpp/thread1258474.html
Здравствуйте, не могли бы помочь разобраться с shared_ptr в векторе... Суть такова есть вектор с игроками, которые shared_ptr: std::vector<std::shared_ptr<rkPlayer>> player; // Находится в...
C++ Аллокатор памяти общего назначения Добрый день! В ВУЗе задали написать аллокатор памяти общего назначения на С++, но у меня нет ни единого представления как это можно сделать, так как знаний по С++ не очень много, и вообще у меня нет... подробнее

Показать сообщение отдельно
ISergey
Maniac
Эксперт С++
1380 / 891 / 54
Регистрация: 02.01.2009
Сообщений: 2,682
Записей в блоге: 1
30.09.2014, 19:51
Цитата Сообщение от taras atavin Посмотреть сообщение
Ну покажите, как у Вас библиотека самостоятельно исполняется. Формат исполняемый, это да. А в контенте файла отличие, из-за которого данный файл способен исполняться только от "имени" другого процесса.
Компилим вот такую DLL (Изначально указав свою EntryPoint)
C
1
2
3
4
5
6
7
#include <windows.h>
 
void __stdcall main_dll()
{
    MessageBoxA(NULL, "TEST_1", "TEST_1", S_OK);
    return;
}
Потом немного изменяем заголовок PE.
Вот это
Assembler
1
0+DE    0221        DW 2102              ;  Characteristics = DLL|EXECUTABLE_IMAGE|32BIT_MACHINE
Меняем на
Assembler
1
0+DE    0201        DW 0102              ;  Characteristics = EXECUTABLE_IMAGE|32BIT_MACHINE
Файл переименовываем в exe и запускаем =)
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru