Форум программистов, компьютерный форум, киберфорум
C/C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
 Аватар для Крюгер
40 / 60 / 8
Регистрация: 16.11.2012
Сообщений: 460
Записей в блоге: 7

Как получить объект из DLL, не используя COM?

22.09.2013, 21:22. Показов 1656. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
И так проблема:
есть класс...(уже что то класс работает всё оК)
в теории всё тоже ОКъ , но вот на практике abs(0) ((((

но захотелось большего!
знаю есть технология интерфейсов, то есть просто интерфейс без ком, (ком меня не устраивает...кроссплатформа и минимум сторонних либ нужно...)
(так же знаю что этому методу много лет и всё такое...но в интернетах как ни странно ничего рабочего ...да и вообще поучительного не нашел...может искал плохо ....не знаю.)

прошу помогите хеловордным но рабочим кодом (dll +client)
как пример можно что то такой направленности:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
class CLog{
public:
CLog();
~CLog();
 
void out(char log){std::cout<<log;}
 
};
только в интерфейсной обертке (чтоб по людски)

заранее всем большое спасибо!!!
Всем помогавшим по жизни буду благодарен

PS поправьте где не так...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.09.2013, 21:22
Ответы с готовыми решениями:

Как получить объект Server из .dll?
Я делаю HttpModule, собираю его в .dll Подскажите плиз, как мне получить объект Server из этого класса? Ссылку на какое пространство имен...

Можно ли десериализовать объект с BinaryFormatter или SOAP не используя .dll класа
Пишу клиент и сервер приложения которые обмениваются между собой данными по средствами сокетов. Я передаю потоком байтов сам объект с...

Получить ссылку на объект из .dll в проекте XNA
В примере кода WinFormsContentSample_4_0.zip показано как в run time загружать модели в приложении XNA. Для этого запускается проект...

6
Модератор
 Аватар для vxg
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
23.09.2013, 11:30
вот тут https://www.cyberforum.ru/com-... 63368.html лежит архив с примером объекта для общего образования
1 что мешает сделать нормальный COM и грузить фабрику самому вызывая функцию DllGetClassObject (чистокровный COM при вызове CoCreateInstance именно это и делает - грузит фабрику и вызывает у нее CreateInstance для получения объекта)?
2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//файл "интерфейса" (по вашей заявке - это не COM - мы не наследуем от IUnknown, посылаем лесом соглашения о результатах вызова функций HRESULT и типе __stdcall)
class IMyObject
{
public:
    virtual void out(char log) = 0;
};
 
//файл реализации
#include <iostream>
 
class CLog:
    public IMyObject
{
public:
    CLog(void);
    virtual ~CLog(void);
 
    virtual void out(char log) {std::cout<<log;}
};
Добавлено через 2 минуты
+ если будете делать не COM вас ждут великие дела при отыскании клиентом серверного объекта на машине и обращению к объекту из другого процесса - фактически вы пройдете дорогой COM только самостоятельно
1
 Аватар для Крюгер
40 / 60 / 8
Регистрация: 16.11.2012
Сообщений: 460
Записей в блоге: 7
23.09.2013, 20:51  [ТС]
vxg, Спасибо конечно... придется искать другую дорогу
0
Модератор
 Аватар для vxg
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
23.09.2013, 21:11
Цитата Сообщение от Крюгер Посмотреть сообщение
дорогу
а что за велосипед если не секрет?
0
 Аватар для Крюгер
40 / 60 / 8
Регистрация: 16.11.2012
Сообщений: 460
Записей в блоге: 7
23.09.2013, 21:15  [ТС]
vxg, да хотел себе (для личного юзания ) сделать что-то типа либы sdl но упрощенная и для своих нужд... естессно хочется сделать всё по людски красиво, и не бажно
0
Модератор
 Аватар для vxg
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
23.09.2013, 21:25
с либой не работал но как не слишком обременительный финал всех интерфейсов мб замутить что то вроде xmlrpc

Добавлено через 39 секунд
...хотя на потоке данных она ляжет скорее всего
0
 Аватар для Крюгер
40 / 60 / 8
Регистрация: 16.11.2012
Сообщений: 460
Записей в блоге: 7
23.09.2013, 21:31  [ТС]
Какой то чел написал движок DGLE2 по такому же принципу, и всё относительно работает (движок просто в пример., как архитектурное решение ))) (там дефайнами выбирается как компилить с ком или без)

Добавлено через 1 минуту
там конечно свои тормоза имеются но это в связи с ОГЛ, и фиговой работой с шейдерами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.09.2013, 21:31
Помогаю со студенческими работами здесь

DLL - как подменить функцию, используя самодельную DLL?
Очень прошу пособить, кому не трудно... . Проблема в целом не сложная: имеется сторонняя программа (только exe), которая при определенном...

Как из ASP освободить COM объект. (Com Multi-threaded DLL)
Сваял на фоксе Multi-threaded DLL Скопировал её на сервер в каталог SCRIPTS зарегистрировал командой regsvr32 далее в ASP написал...

Как создать объект по его типу, не используя конструктор?
Необходимо создать объект, зная его тип. Activator.CreateInstanc использует конструктор, так что он не подходит.

Как получить объект из bind
Добрый день Я новичок, и столкнулся с проблемой, есть такой код (function ( $ ) { $.myFunction = function() { this.img =...

Comobox: как получить объект?
Я заполнаю компобокс списком из своих объектов так: conditionbox1.DataSource = controller.configParams(); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru