Всех с прадником Победы!
Для использования сторонних dll в мирных целях, т.к коньяк выпит а остальные условия не обговаривались то выкладываю в честь праздника как есть calldllex_new.zip
Ответов: 5227
Рейтинг: 587
|
|||
карма: 4 |
| ||
файлы: 1 | calldllex_new.zip [12.5KB] [811] | ||
Голосовали: | 1nd1g0, CriDos, Roma, flud, sаmakacd, LainX, foksov, hitman249, miver, Ruthless, wss60, filyaxxxcom, Konst, Xitr |
Ответов: 157
Рейтинг: 1
|
|||
Хороший компонент но как быть если функция возвращает значение но вводимых параметров не имеет ?
И если функция имеет вводимые параметры но ничего не возвращает ? |
|||
карма: 0 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Мартынов писал(а): но как быть если функция возвращает значение но вводимых параметров не имеет ?function Name N;type N=no value, type= result function Мартынов писал(а): И если функция имеет вводимые параметры но ничего не возвращает ?------------ Дoбавленo в 19.04: [flood]Мартынов, личка тебе не доступна. Экспорт можно смотреть только в библиотеках не сжатых различными упаковщиками. Давай схему c dll посмотрю.[/flood] |
|||
карма: 4 |
|
Ответов: 1291
Рейтинг: 47
|
|||
Не поможете с примером как передавать и получать параметры в dll при помощи CallDllEx? У меня вышло только вызвать функцию без параметров.
------------ Дoбавленo в 20.17: Все, спасибо, методом научного тыка) разобрался: Синтаксис такой: WriteMap;s;s;'ff' Где WriteMap - в данном случае имя функции s - означает тип входных данных - в данном случае Pchar (можно подсмотреть в исходнике) s - тип выходных данных - аналогично 'ff' - а вот дальше самое интересное - 'ff' - это входной параметр функции. Оказывается его надо писать в самом конце... В общем, спасибо автору, заработало. Наверное, множественные параметры также перечисляются через ; друг за другом. В аттаче - пример использования. Сначала надо скомпилить тестовую dll MT4dll_test1.sha Кстати, в этой нестандартной Dll с добавлением IC мне удалось добиться видимости DLL собранных в Hiasm в сторонних приложениях, в частности, в терминале Metatrader4. Интеграция с внешними приложениями - 100% все функции и процедуры работают - но.. только те которые написаны в самом IC. Все что создано визуальными компонентами вне - никак не влияет на логику dll. Я даже таймер на компонентах подцепил чтоб выдавал MessageBox - ничего не сработало. Кто подскажет как это побороть и добиться вызова сторонними приложениями через dll срабатывания каких-то точек в схеме и наоборот. |
|||
карма: 3 |
| ||
файлы: 1 | calldllextest.rar [3.3KB] [563] |
Ответов: 3889
Рейтинг: 362
|
|||
Aziz писал(а): методом науного тыкаА примеры посмотреть? |
|||
карма: 1 |
|
Ответов: 1291
Рейтинг: 47
|
|||
Прикрепил..
|
|||
карма: 3 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Aziz, да я о примерах к компоненту, в которых есть необходимая информация по использованию.
|
|||
карма: 1 |
|
Ответов: 1291
Рейтинг: 47
|
|||
1nd1g0 писал(а): Aziz, да я о примерах к компоненту, в которых есть необходимая информация по использованию.А их-то как раз и нету. Ни в архиве, ни в справке по F1. Хиасм обновлен с SVN. Иначе я бы не спрашивал.. |
|||
карма: 3 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Aziz, а папка Example в архиве calldllex.zip Вам ни о чём не говорит?
|
|||
карма: 1 |
|
Ответов: 1291
Рейтинг: 47
|
|||
Черт попутал.. Заработался.. Спасибо.. Я оказывается машинально распаковал только папку с компонентом, а затем забыл про то чтотам еще было Example... Видимо так быстро хотелось все это запустить) Счас посмотрим..
------------ Дoбавленo в 00.53: Aziz писал(а): Я даже таймер на компонентах подцепил чтоб выдавал MessageBox - ничего не сработало.Кстати, может это я погорячился, ведь вроде dll сама не способна выдавать какие-либо события изнутри, пока ее не вызовут? Наверное поэтому таймер и молчал с MessageBox.. Так ли это? Dll способна только возвращать результат у нее запрошенный главной (вызывающей) программой. Значит осталось только получить доступ к точкам со стороны внешних программ. ------------ Дoбавленo в 00.54: Нашел глюк форума - когда добавляешь сообщения время последнего сообщения затирает время создания поста. |
|||
карма: 3 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Aziz писал(а): Нашел глюк форума это не глюк, а старая фича Aziz писал(а): вроде dll сама не способна выдавать какие-либо события изнутри, пока ее не вызовут?Если таймер не зарегистрировать (например, при инициализации библиотеки), то он, естественно, работать не будет. Кроме того, таймеры бывают разные, скажем, очередь сообщений, на которой работает тот же местный Timer, (в оконных приложениях) обычно обрабатывается оконной процедурой формы. Если речь о dll местного изготовления, то не стоит писать в тему по CallDllEx, ориентированному по большей части на сторонние библиотеки. Это не проблема компонента, это специфика местных библиотек. |
|||
карма: 1 |
|
Ответов: 1291
Рейтинг: 47
|
|||
Ясно.. Ок, можно переместить посты в тему Торопчина "как работать с dll". Просто я то как раз хотел использовать компонент для работы с dll которая, хоть и местного производства, но распознается внешними программами как стандартная, хоть и с со специфичными Хиасму функциями экспорта. (dll init и пр.)
|
|||
карма: 3 |
|
Ответов: 195
Рейтинг: 7
|
|||
Вопрос не в тему ваших объяснений! При помощи данного компонента можно сделать бота для игры!?
|
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
hin4, это неправильный вопрос, правильный - есть ли dll, которую этот компонент может подгрузить и которая может использоваться для создания бота.
Но этот вопрос не по адресу |
|||
карма: 10 |
|
Ответов: 195
Рейтинг: 7
|
|||
Согласен вопрос не корректный Но все таки, его можно использовать для этих целей?? или есть
что-то по круче данного компонента))) |
|||
карма: 0 |
|