|
Модератор
|
|||||||||||||||||||||
Вызов любых функций по указателю17.04.2014, 19:11. Показов 13758. Ответов 57
Пока не работал форум, ковырялся в рантайме VB
.Иследуя функции VBA6 придумал способ вызова функций по указателю. Все просто. Объявляем прототип функции (пустую функцию), где дополнительно первым параметром будет передаваться адрес функции. Далее пропатчиваем его, таким образом чтобы он перекидывал нас по адресу заданному первым параметром. Таким образом можно вызывать функции в стандартных модулях, модулях класса, формы, API-функции (например полученные через LoadLibrary и GetProcAddress). Одно замечание, пока не выяснил причину, желательно запускать проект через Ctrl+F5, т.к. иногда может не работать указатель или же вообще происходить вылет. А так работает и в IDE и в скомпилированном виде. Пример вызова по указателю обычных функций модуля. Кликните здесь для просмотра всего текста
Вызов метода класса (как вычислить адреса напишу позже). Кликните здесь для просмотра всего текста
Вызов API функций: Кликните здесь для просмотра всего текста
5
|
|||||||||||||||||||||
| 17.04.2014, 19:11 | |
|
Ответы с готовыми решениями:
57
Вызов функции по указателю с параметрами Вызов функции по указателю из класса |
|
|
|
| 19.04.2014, 00:48 | |
|
0
|
|
|
Модератор
4357 / 3427 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
|
||||||
| 19.04.2014, 01:16 | ||||||
|
The trick,
0
|
||||||
|
|
|
| 19.04.2014, 01:25 | |
|
это синонимы
тоесть два разных слова имеющие один смысл
1
|
|
|
Модератор
|
||||||
| 25.04.2014, 03:53 [ТС] | ||||||
Сообщение было отмечено Catstail как решение
Решение
Как и обещал
![]() Просмотр классов, интерфейсов, типов, перечислений, модулей, объединений для ocx, dll, tlb.
2
|
||||||
|
Модератор
4357 / 3427 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
|
|
| 25.04.2014, 11:58 | |
|
The trick, круто!
0
|
|
|
|
|||||||
| 25.04.2014, 15:45 | |||||||
![]() Добавлено через 1 минуту Теперь обязательно включу в свою работу ! Добавлено через 14 минут Эксешник работает, его уже в принципе можно использовать как отдельное приложение но вот проект не запускается ругань на это ...
как она правильно называеться чтоб ее подключить через браузер компонентов ?
0
|
|||||||
|
|
|
| 25.04.2014, 15:59 | |
|
сейчас постараюсь сам разобраться ...
я тебе лог скину в личку ... Добавлено через 3 минуты Вобщем пишет что и сам компонент ошибочен... который рассположен на форме попробую его подменить и переименовать под твой
0
|
|
|
|
||
| 25.04.2014, 16:03 | ||
его в сохраненной копии старой винды...
0
|
||
|
|
|
| 25.04.2014, 16:07 | |
|
0
|
|
|
|
|
| 25.04.2014, 16:28 | |
|
Проект работает ! ✰
![]() Добавлено через 1 минуту Я заново пере-извлек из архива и сразу подключил Microsoft Windows Common Controls 5.0 и перезапустил . Добавлено через 3 минуты наверное тебе не надо было его указывать в проекте явно ... а создавать на месте .. в инициализации (ну это только совет) Добавлено через 4 минуты Анатолий ! Спасибо тебе за твой труд ! Добавлено через 6 минут Пойду стучаться к модераторам чтоб они тебе поставили это лучшим ответом !
1
|
|
|
|
|
| 25.04.2014, 21:31 | |
|
Теперь я берегу этот архив как ценный бриллиант
но дело еще вот а чем.... почему не отображаются аргументы в функциях и свойствах если и такое можно будет сделать то вообще можно отказаться от среды IDE или сделать её посредником своей среды разоаботки
0
|
|
|
|
|
| 25.04.2014, 22:13 | |
|
Тоже как-то с первого раза не получилось.
Распаковал заново. Скопировал в папку с проектом файл c:\Windows\SysWOW64\COMCTL32.OCX Указал в References и переоткрыл проект. Все запустилось. Спасибо, The trick, шикарно показывает. Скажи, пожалуйста, ошибка "error loading dll" (Err = 48), здесь: Visual Basic Set locLib = LoadTypeLibEx(Path, REGKIND_NONE)Можно ли доработать программу, чтобы вначале списка еще и показывала список импортируемых/экспортируемых API? Было бы вообще замечательно.
1
|
|
|
|
|
| 25.04.2014, 22:42 | |
|
Тоесть если все будет доработанно то я постараюсь сделать
к твоему проекту хорошую рецензию, отпишу во всех подробностях зачем нужна эта программа и что она умеет делать, а Dragokas разместит в закрепленной теме (..может быть) у нас этот продукт потом даже иностранцы будут скачивать ... )))
0
|
|
| 25.04.2014, 22:42 | |
|
Помогаю со студенческими работами здесь
40
Вызов функции по указателю со смещением
Вызов функции по указателю, расположенному в структуре Вызов виртуальной функции по нулевому указателю Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|