|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
|||||||||||
OLE(Object Linking and Embedding)?24.01.2024, 23:07. Показов 14666. Ответов 167
Здравствуйте! Приступил к изучению темы OLE, если кто-то эту тему понимает, то ему не составит труда пояснить что это за зверь такой, ну, или пояснить некоторые моменты, мелочи. Вот одна такая "мелочь"
Почему автор объявляет класс так: Кликните здесь для просмотра всего текста
Это что-то абсолютно мне не знакомое, и, если на win32 DLL-библиотека собирается, то для win64 уже нет, ругается
0
|
|||||||||||
| 24.01.2024, 23:07 | |
|
Ответы с готовыми решениями:
167
Error linking glsl Program Object Как увидеть содержание типа OLE Object с помощью Delphi-Ole Conteiner? Изменить Свойство Ole Object |
|
COM‐пропагандист
|
|
| 07.02.2024, 10:02 | |
|
Liss29, DECLARE_INTERFACE — для интерфейсов, у которых нет родителя. На практике такие интерфейсы не встречаются, потому что у всех интерфейсов есть родитель IUnknown.
DECLARE_INTERFACE_ для всех интерфейсов у которых есть родитель. И что значит «создать интерфейс»? Экземпляры интерфейса нельзя создать, это абстрактный класс. Интерфейс можно только объявить. А создать можно класс, унаследованный от интерфейса.
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
||
| 07.02.2024, 22:57 [ТС] | ||
|
0
|
||
|
COM‐пропагандист
|
|
| 08.02.2024, 10:08 | |
|
0
|
|
|
Модератор
|
||||||||||
| 08.02.2024, 11:37 | ||||||||||
|
Не по теме:
в сторону производных - с помощью явного static_cast
Добавлено через 4 минуты DAlloc::Initialize() ?Добавлено через 4 минуты Добавлено через 37 минут Необходимые интерфейсы вроде IOleObject и IDropTarget уже объявлены для нас там, где надо.https://learn.microsoft.com/en... interfaces Свой интерфейс можно определять для сопутствующих тем, таких, как Automation (бывшая OLE Automation, а теперь неизвестно что), чтобы пользователи могли писать макросы на Бейсике или других языках, вызывая методы объектов, представленных через интерфейс для управления Вашей програмой. Но это возможно и без собственно OLE. https://learn.microsoft.com/en... /_automat/ https://learn.microsoft.com/en... -reference
0
|
||||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
|||||||
| 08.02.2024, 23:59 [ТС] | |||||||
0
|
|||||||
|
Модератор
|
|||
| 09.02.2024, 06:30 | |||
|
Если вызывается метод, которого нет в IMalloc, значит Caller пытается использовать другой интерфейс. интересными способами.Зачем 1+1 вычислять методами вариационного исчисления и нестандартного анализа?
0
|
|||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
|||||||||
| 09.02.2024, 07:23 [ТС] | |||||||||
|
CALLER1.rar
0
|
|||||||||
|
Модератор
|
||||||||||||||||
| 09.02.2024, 12:27 | ||||||||||||||||
|
Т.о
DAlloc::Initialize() вызывается внутри экспортируемой ::CreateAllocator().Метод DAlloc::Initialize() предназначен для внутреннего использования библиотекой.CLIENT использует импортируемую ::CreateAllocator() и методы IMalloc.Добавлено через 18 минут Клиенту на Си DDaloc.h целиком вообще не нужен.IMalloc он знает из <windows.h>Нужно только объявление импортируемой функции
imalloc.lib, полученная при сборке imalloc.dll.Для клиента на с++ объявление такое:
__declspec(dllimport):
0
|
||||||||||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
||||||||||||
| 10.02.2024, 23:51 [ТС] | ||||||||||||
|
Что нужно то...? Какое-то ветвление чтобы понять какой язык использует клиент? Добавлено через 28 минут
0
|
||||||||||||
|
COM‐пропагандист
|
||
| 11.02.2024, 07:36 | ||
|
Корпорация Микрософт для экспортируемых функций использует язык Си, а программисты пишущие на других языках сами знают как переводить си‐конструкции на эти языки.
0
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
||
| 11.02.2024, 21:38 [ТС] | ||
|
0
|
||
|
Модератор
|
|||||||||||||||
| 12.02.2024, 08:46 | |||||||||||||||
Добавлено через 19 минут ::CreateAllocator()?
0
|
|||||||||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
||||
| 12.02.2024, 17:47 [ТС] | ||||
|
0
|
||||
|
COM‐пропагандист
|
||
| 12.02.2024, 19:17 | ||
|
0
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
||
| 12.02.2024, 22:03 [ТС] | ||
. Тогда как же с сокрытием интерфейса?! В файле DAlloc.h мало того, что присутствует реализация функций, так ещё присутствуют поля данных, которые точно должны быть скрыты. Или это уже не актуально.Короче говоря вернусь к своим "баранам": дык-с, что там на счёт реализации интерфейса DAlloc с помощью макроса, я почему то не могу найти решения, если я тупой, то подскажите что всё же не так у меня в коде и как это что-то исправить.
0
|
||
|
COM‐пропагандист
|
|||
| 12.02.2024, 22:53 | |||
|
Класс всегда непубличный, и клиенту не показывается. У клиента уже есть всё что нужно: IMalloc лежит в заголовочных файлах виндоуз. Ни про какие файлы DAlloc.h с вашей реализацией клиент знать не должен. Клиенту нужно сделать только пару вещей: знать определение функции CreateAllocator() и подключить скомпилированную DLL с вашим классом.
0
|
|||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
|||||
| 12.02.2024, 23:28 [ТС] | |||||
Короче говоря: "ясно, что ничего не ясно!".
0
|
|||||
|
COM‐пропагандист
|
|||
| 13.02.2024, 00:17 | |||
|
Добавлено через 13 минут
0
|
|||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,633
|
||||
| 13.02.2024, 00:27 [ТС] | ||||
|
Добавлено через 8 минут
0
|
||||
| 13.02.2024, 00:27 | |
|
Access and Excel OLE object ActiveX ole-object с Delphi на Qt Access and Excel OLE object Импорт файла из OLE Object в attachment Как вставить рисунок с OLE object таблицы EXCEL в таблицу Acces Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Администрация Хабра удаляет новые алгоритмы, которые не западно ориентированной философии кода, без уведомлений и объяснений.
Hrethgir 20.06.2026
Делается это, как замечено, при правках - при объявлении концептуальных отличий в алгоримах. Делается это, по линейке событий - после дополнения публикации основными отличиями от основных западных. . .
|
Процесс ориентированная диалектика (не новость - просто системное обновление, философия).
Hrethgir 20.06.2026
Однажды один участник в своём блоге, на этом форуме, сделал запись "О языках замолвите слово". Понимая, что язык - важная вещь, я решил хорошо подумать, прежде чем сказать, и сказал то, что вы видите. . .
|
Контроль уникальности строк в табличной части документа
Maks 18.06.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ПланированиеСпецтехники" с табличной частью "НаличиеОборудования", разработанного в КА2.
Задача: контроль уникальности строк в. . .
|
Клиент
Uhbif79 18.06.2026
Здесь простой клиент для работы с сервером.
|
|
Сервер
Uhbif79 18.06.2026
Выкладываю простейший сервер.
|
Дефенестрация
kumehtar 18.06.2026
Узнал интересное слово. Дефенестрация. Это когда ты выбрасываешь кого-либо или что-либо из окна. Возьму на вооружение)))
|
Дихотомия добра и зла
kumehtar 18.06.2026
Как Дзен-буддисты говорят о добре и зле: не нужно воевать против зла, нужно воевать против невежества. Тогда добро станет ествественным, и поэтому вечным. Но дело в том, что невежество всё время. . .
|
Своя Интернет-Компания
iceja 18.06.2026
Я программист с экономическим образованием, пишу свой проект, это SaaS для бизнесов. Мне нужен co-founder с высшим экономическим образованием, и/ или инвестор. Сейчас проект в интенсивной разработке,. . .
|