Форум программистов, компьютерный форум CyberForum.ru

Обратная линковка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ алгоритм IDEA http://www.cyberforum.ru/cpp/thread66647.html
Есть бинарный 16 байтный файл ключа.Надо разбить его на восемь 16 битных ключей,затем выполнить циклический сдвиг на 25 разрядов влево и опять разбить на восемь 16 битных ключей и так надо получить 52 ключа(генерация ключей в IDEA).Как это можно осуществить.
C++ Как переписать драйвер АЦП в защищенном режиме Помогите с переписыванием драйвера. Есть исходник драйвера АЦП который пишет в файл, необходимо переписать драйвер так что бы он писал в защищенном режиме в память. АЦП работает по DOS'ом. http://www.cyberforum.ru/cpp/thread66577.html
Напишите программы. Заранее спосибо. C++
1. В одномерном массиве состоящих из т вещественных чисел элементов вычеслить а)количество элементов массива меньше чем С б) сумму целых частей элементов массива после последнего отрицательного числа 2.Вычислить и вывести на экран в виде таблицы значения функций F на интервале от х начального до х конечного с шагом Dx ax _2+5___ при x<1 и c<>0 ...
C++ Word file
Не знаю как объяснить, хочу создать фаил в ворде с разметкой строк, типа таблицы. Есть ли какие то команды для работы с вордом ???
C++ Рекурсивная функция для определения возможности перемещения шара игры Lines http://www.cyberforum.ru/cpp/thread66146.html
Помогите разобраться с кодом #define EMPTY 0xff ..................................... struct { long Score; POINT Action; char ActionIndex; UCHAR Field; }GameStruct;
C++ Компиляция в текстовом редакторе Всем привет. У меня есть одна проблема: Как скомпилировать файл-программу при помощи текстового редактора. Лично у меня стоит UltraEdit и для него нужно записать команду, которая будет передаваться в командную строку. Вопрос, что за файл-компилятор нужно указать(у меня компилятор Borland c++ for DOS 3.11) и что надо сделать чтобы не возникали проблемы с включениями(#include). К примеру в java... подробнее

Показать сообщение отдельно
djamshud
Сообщений: n/a

Обратная линковка - C++

23.11.2009, 23:18. Просмотров 589. Ответов 0
Метки (Все метки)

Доброго времени суток.

Интересует, как организовать сабж в windows. Пример (ниже опишу, что к чему):

***shared_header.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<stdio.h>
class sharedClass{
public:
sharedClass();
};
 
***plugin.cpp -> libplugin.dll
#include"shared_header.h"
extern "C"
void loader(){
printf("Plugin is loaded!\n");
new sharedClass;
}
 
***base.cpp -> base.exe
#include"shared_header.h"
sharedClass::sharedClass(){
printf("Shared class is loaded!\n");
}
 
int main(){
/*
Немного кода, который загрузит и вызовет функцию loader из libplugin.dll
*/
return 0;}
Т.е., что происходит. Говорим, что есть общий класс sharedClass. Хедер общий, реализация в base.exe. Загружаем библиотеку libplugin.dll и вытаскиваем из нее функцию. Видим
Plugin is loaded!
Shared class is loaded!

И это прекрасно работает... в линуксе. При линковке динамической библиотеки там достаточно определений классов и функций, а реализация подцепляется на лету, во время загрузки библиотеки. В винде при линковке плагина требуется реализация конструктора расшаренного класса. Т.е. фактически нужно экспортировать ряд полей из программы в загруженную библиотеку.

На одном форуме советовали повозиться с .def файлом, но у меня в итоге так ничего и не получилось. Если кто знает правильное решение проболемы (без выноса sharedClass в отдельную библиотеку), буду благодарен за помощь.

P.S. Компилятор mingw, хотя не уверен, что дело в нем. Линковщик то один...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru