Как сделать TLB30.06.2023, 20:11. Показов 3729. Ответов 34
Метки нет (Все метки)
Все говорят об этих волшебных штуках, о том, какие возможности и удобства.., но никто ни говорит, как их делать. Видел статью как это делается с помощью специальной проги на Delfi, можно ли ее использовать для VB?
0
|
|
| 30.06.2023, 20:11 | |
|
Ответы с готовыми решениями:
34
*.tlb файлы - как их делать и как они работают ????
|
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|
| 05.07.2023, 06:31 | |
|
testuser2, а чего ты не попробуешь на VB6? Да и вообще чего ты так на этом VBA помешался. Программировал бы лучше на VB6.
0
|
|
| 05.07.2023, 07:38 [ТС] | ||
|
Добавлено через 12 минут На Пайтоне подобная концепция реализована в виде библиотеки скриптов. Недавно запись была про это. https://www.cyberforum.ru/blog... g8158.html Удобно - надо какую-то задачу сделать - выбрал нужный скрипт. Но мне не нравится, что там при выполнении скрипта, выводится какая-то билиберда консолью, вообще не понимаю в этом смысла.
0
|
||
| 06.04.2025, 12:44 [ТС] | |
|
Хотелось бы все-таки понять, как скомпилировать с помощью midl, мне это нужно чтобы создать декларацию с LONG_PTR. Я пробовал компилить даже нормальные, рабочие idl-ы, не получается, все время чего-то не хватает, чего-то там кричит про cl.exe. Стыдно сказать, даже к ИИ обращался с вопросом, но он не дал мне божественного знания, а только все время
0
|
|
| 06.04.2025, 12:49 [ТС] | ||||||
|
The trick, у меня есть своя простейшая tlb-шка всего с одной функцией. Я ее откры OleView и сохранил от туда файл IDL и попытался скомпилить с ключем /tlb последний раз это было так. Я уже наустанавливал всякой "требухи" типо Windows Kits, Даже VS 2017 Community установил не че не помагает (
0
|
||||||
|
Модератор
|
|||||||||||
| 06.04.2025, 13:09 | |||||||||||
|
testuser2, нужно сначала настроить пути типа такого:
2
|
|||||||||||
| 06.04.2025, 13:34 [ТС] | ||
|
Все-таки от статичности TLB видимо ни куда не уйти. А в TLB можно делать парметр, допустим какой-нибудь второ с дефолтным значением, а остальные обычные?
0
|
||
|
Модератор
|
|
| 06.04.2025, 14:18 | |
|
2
|
|
| 06.04.2025, 15:36 [ТС] | ||||
|
Добавлено через 30 минут typedef void* PtrPtr ?Добавлено через 6 минут Вижу, есть аттрибут ptr https://learn.microsoft.com/ru... 2/midl/ptr Но еще бы понять, может ли это добавить каких-то возможностей Vb..
0
|
||||
| 24.04.2025, 16:39 [ТС] | |
|
Получилось все-таки скомпилировать с помощью midl-а таким образчиком
1 сначала нужно найти vcvars32.bat (или vcvars64.bat) 2 открыть окно команд от администратора и выполнить батник 3 выполнить midl "путь к .tlb" tlb компилируется и попадает в системный каталог SysWOW64 (или System32, как полагаю, я использовал vcvars32.bat)
0
|
|
| 02.08.2025, 13:23 [ТС] | ||||||||||||||||||||||
|
Нашел, как настоящий LongPtr добавлять в tlb, для этого нужно добавлят импорт
Добавлено через 21 минуту Еще одну вещь увидел в stdole2.tlb тип OLE_COLOR определен как unsigned long, вау, думаю, а не работает ли unsigned в VBA. Неа, код выполняется без ошибок )(
Дальше об экспериментах
1
|
||||||||||||||||||||||
| 23.11.2025, 07:49 [ТС] | ||||||||||||||||
|
Опять же не понятная ситуация
В VBE7 есть модуль Constants
Разобрался. В Atl-проекте, в демонстрационном модуле автоматически добавляется заголовок такого вида #include "название_проекта_i.h" (в моем случае ATLVBA_i.h), я думал, что это необходимо и добавлял этот инклд во все новые модли. Но это вот как раз мешало откомпилировать константы в idl-модуле, поскольку все константы и функции из idl автоматически попадают в ATLVBA_i.h, а посколь ATLVBA_i.h был заинклюден в несколько модулей, то в них автоматически попадают определения из ATLVBA_i.h, т.е. из файла idl. И все вроде в порядке, но с константами из idl почему-то происходит такая фигня, что они как-будто переопределяются в каждом модуле по-новой и начинают друг с другом конфликтовать. В обем убрал во всех своих модулях #include "ATLVBA_i.h" и компиляция прошла нормально и константа появилась в Object-браузере.
0
|
||||||||||||||||
| 23.11.2025, 07:49 | |
|
Помогаю со студенческими работами здесь
35
Как сделать Typelib (.TLB) файл для компонентов ActiveX Как зарегистрировать msdatsrc.tlb Как получить библиотеку типа *.tlb из COM-объекта *.exe Как в редакторе tlb (COM) указать тип параметра "HBITMAP *p" Дерегистрация TLB Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|