В поставке hiasm 3.68 есть пример создания Windows dll. Мне кажется очень скудным и не совсем понятным.
Собственно что мне надо - вернуть одно значение(жестко прописано в самой dll), а другое (передаваемое по ссылке из программы) поменять на другое.
Этот топик читают: Гость
Ответов: 2
Рейтинг: 0
|
|||
карма: -1 |
|
Ответов: 3514
Рейтинг: 184
|
|||
exe
code_11696.txt dll code_11697.txt (не забудьте указать имя dll) Я надеюсь вот так вот (визуально) понятно что и как происходит? |
|||
карма: 0 |
| ||
файлы: 2 | code_11696.txt [363B] [440], code_11697.txt [341B] [465] | ||
Голосовали: | GRIMAN |
Ответов: 2
Рейтинг: 0
|
|||
Честно говоря нет...
Если я вызову do1 то сработает on1 в dll? А если я в dll позову do11 то он "выползет" из on11 в calldll? Обзывать цифрами обязательно? |
|||
карма: -1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
8iv писал(а): Если я вызову do1 то сработает on1 в dll?
А если я в dll позову do11 то он "выползет" из on11 в calldll? да 8iv писал(а): Обзывать цифрами обязательно?нет |
|||
карма: 27 |
|
Ответов: 875
Рейтинг: 101
|
|||
а можно ли сделать DLL с собственными именами функции в DLL
тоесть щас в собраной dll есть такие функции
хотелось бы что то свое там вписать |
|||
карма: 1 |
|
Ответов: 5446
Рейтинг: 323
|
|||
flud, нет.
|
|||
карма: 1 |
|
Ответов: 86
Рейтинг: 1
|
|||
Подскажите, что за ошибка: Runtime error 216 at 00003044?
Program:
|
|||
карма: 1 |
|
Ответов: 3514
Рейтинг: 184
|
|||
Смотри примеры выше.. используй
|
|||
карма: 0 |
|
Ответов: 4641
Рейтинг: 334
|
|||
А все таки почему используя calldll все ок! А при usehidll обязательно ошибка выскочит?
|
|||
карма: 1 |
|
Разработчик
Ответов: 26113
Рейтинг: 2126
|
|||
Ravilr писал(а): А при usehidll обязательно ошибка выскочит?Не понятно, но почему-то передача данных в потоке вызывает ошибку. Но если передавать через переменные, то все нормально Program
DLL
|
|||
карма: 22 |
|
Ответов: 4641
Рейтинг: 334
|
|||
nesco писал(а): передача данных в потоке вызывает ошибкуа вот с другими компонентами все ок! что то не то в UseHiDll |
|||
карма: 1 |
|
Разработчик
Ответов: 26113
Рейтинг: 2126
|
|||
Ravilr, я нашел баг и исправил
|
|||
карма: 22 |
| ||
Голосовали: | Ravilr |
Ответов: 4628
Рейтинг: 749
|
|||
flud писал(а): а можно ли сделать DLL с собственными именами функции в DLLiarspider писал(а): нет.Я тоже хотел бы DLL с произвольными именами функций. Почему не сделать, скажем, так. Добавить компонент "Экспортируемая функция", в свойствах указывается имя функции, соглашение по вызову и количество параметров типа DWORD. Очевидно, что в этих параметрах напрямую можно принимать-передавать многие простые типы данных, а все пользовательские передаются в виде указателя. Теперь, допустим, я хочу сделать плагин, скажем, для Тотал Коммандера. В DLL бросаю нужное количество компонентов "Экспортируемая функция" и пишу компонент или IC, который обрабатывает (и/или преобразовывает в стандартные типы HiAsm) все принимаемые пользовательские типы данных с этих функций. Мне кажеться, сдесь просто нужно внести поправки в проект DLL, чтобы в экспорте прописывались функции из компонентов "Экспортируемая функция". |
|||
карма: 26 |
| ||
Голосовали: | CriDos |
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
У меня такая идея была, но нужно править кодогенератор, на что руки не достают
|
|||
карма: 10 |
|
14