|
|
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
7привет)) Хочу понять принцип создания процедуры длл. Мне не понятно, где именно нужно объявлять переменные в длл. В самой строчке Procedure, или же в var... Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. Или же мне нужна функция? Речь о том, что бы в проекте сделать скрин, сохранить его, и вызвать процеду из длл, что бы она загрузила его в вк. Никогда не работал с dll, обходил их как огонь))))) но для саморазвития должен попробовать! Смотрел видео на ютубе, но там чисто поверхностно обговаривают... Остаются еще больше вопросов чем было. В принципе, скриншот "(всегда)" будет лежать по пути "C:/" и удаляться сразу после загрузки на вк. По этому, как я понимаю, пути к файлу передавать в библу не нужно. А только вызвать процедуру в нужный момент. PS на form1.smemo1.text не обращайте внимания, я пытаюсь заменить её на TS: TStringList. Осталось узнать где это объявить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 14:54 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, Tech N9neХочу понять принцип создания процедуры длл. скачай книжку, там есть глава про dll и их написание https://www.for-stydents.ru/informatika/delphi/uchebniki/delphi-5-rukovodstvo-razrabotchika-tom-1-osnovnye-metody-i-tehnologii-programmirovaniya.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:00 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neНикогда не работал с dll, обходил их как огонь))))) но для саморазвития должен попробовать! Лучше забей. Если таки не хочешь забить - начни с функции в dll попроще, например, которая складывает два числа. Второй этап (после успешного первого) - сделай работающую функцию в dll, которая сохраняет результат этого сложения в файл, имя которого передается как параметр функции. Последние 3 совета: 1. Ставь навсякий между "begin end." IsMultiThread := True; 2. Не используй в параметрах экспортируемых функций автоматические и сложные типы (String, дин. массивы, классы); 3. Во всех своих dll делай 2 доп. функции: Initialize и Finalize. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:09 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne7привет)) Хочу понять принцип создания процедуры длл. Мне не понятно, где именно нужно объявлять переменные в длл. В самой строчке Procedure, или же в var... Код: pascal 1. 2. 3. Сленг радует :) код соответвует Имеет смысл прочесть то, что в { } - там не глупости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:49 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
s62Tech N9ne, Tech N9neХочу понять принцип создания процедуры длл. скачай книжку, там есть глава про dll и их написание https://www.for-stydents.ru/informatika/delphi/uchebniki/delphi-5-rukovodstvo-razrabotchika-tom-1-osnovnye-metody-i-tehnologii-programmirovaniya.html Посмотрел, там сразу про функции в библе. YuRock, Так как же я сделаю процедуру, если мне не объяснили где именно объявлять переменные, в строчке procedure (......) или же ниже в var? и если в var, то что писать в самой процедуре? Составьте пожалуйста мне заголовок процедуры, из моего заголовка. Там все переменные которые юзаются в коде. Мне непонятен именно этот нюанс. Дальше я пойду пробовать с малых процедур, функций. Я ведь не многого прошу?))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:52 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
x1ca4064Tech N9ne7привет)) Хочу понять принцип создания процедуры длл. Мне не понятно, где именно нужно объявлять переменные в длл. В самой строчке Procedure, или же в var... Код: pascal 1. 2. 3. Сленг радует :) код соответвует Имеет смысл прочесть то, что в { } - там не глупости. Я bad знаю англ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:54 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, А зачем тебе external 'BKF.dll' в этой же DLL? И где секция export? Ну и string я бы на PChar заменил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:55 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
О, там еще TStringList есть. Вообще хорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:57 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
И Form. Не взлетит в общем - все через одно место... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 15:59 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, Form1 - это что? Форма из основной программы или созданная в dll? ЗЫ: хотите понять принцип - начните с простого, как YuRock советовал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:01 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
DarkMasterО, там еще TStringList есть. Вообще хорошо. Ну видите, в книгах сразу описывается функции, но не пишут что для чего и как. Мне нужно пол тонны прочитать, что бы вообще открывать delphi. Или пойти на программиста? Как мне добыть инфу которая мне нужна, что бы реализовать свои нужды в ближайшее время? Я понял что делаю что-то не так, почему бы не объяснить, почему нельзя юзать tstringlist, и на что его можно заменить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:02 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
goldmi45Tech N9ne, Form1 - это что? Форма из основной программы или созданная в dll? ЗЫ: хотите понять принцип - начните с простого, как YuRock советовал. это я в своей программе обращаюсь к memo1. Код естественно вырезан с программы и вставлен в библу. Задумка была такая, скинуть код в библу, заменить всё с form1.memo на tstringlist. В самой библе не собираюсь делать формы. Я повторюсь, как я пойду делать процедуры и функции, если я в принципе не знаю, где объявлять переменные! В самой строчке PROCEDURE name(................. тут?) var или тут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:06 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЯ bad знаю англ))) Это нормально для АУЕ, не тот язык учил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:08 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Чтож ладно, я зайду с другой стороны)) объясните как сделать функцию в библе, что бы в неё, программа передавала 3-4 стринга, и 1 stringlist на выходе boolean ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:12 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЯ ведь не многого прошу?))) Ты просишь разжовывать тебе азы. Это много. Очень много. Tech N9neМне нужно пол тонны прочитать, что бы вообще открывать delphi. Или пойти на программиста? Да. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:17 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neТак как же я сделаю процедуру, если мне не объяснили где именно объявлять переменные, в строчке procedure (......) или же ниже в var? Там же, как и в обычных процедурах в основной программе. Синтаксис процедур для exe и dll не отличаются. Tech N9neэто я в своей программе обращаюсь к memo1. Код естественно вырезан с программы и вставлен в библу. Это не естественно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:18 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЧтож ладно, я зайду с другой стороны)) объясните как сделать функцию в библе, что бы в неё, программа передавала 3-4 стринга, и 1 stringlist на выходе boolean Если кратко - никак. В длл можно предать только числа и указатели ( тоже числа, по сути). Строки, объекты - нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:23 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
YuRockTech N9neТак как же я сделаю процедуру, если мне не объяснили где именно объявлять переменные, в строчке procedure (......) или же ниже в var? Там же, как и в обычных процедурах в основной программе. Синтаксис процедур для exe и dll не отличаются. Tech N9neэто я в своей программе обращаюсь к memo1. Код естественно вырезан с программы и вставлен в библу. Это не естественно. Спасибо. В dll во что мне загрузить ответ от сервера вк ? На что заменить tstringlist? Мне нужно отправить запрос, распарсить, отправить, опять парсить и тд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:24 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neВ dll во что мне загрузить ответ от сервера вк ?В память. Tech N9neНа что заменить tstringlist?На указатель на память. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:26 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Непонятно, что лучше - тот упоротый анонимус или вот такие топикстартеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:27 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
YuRockTech N9neВ dll во что мне загрузить ответ от сервера вк ?В память. Tech N9neНа что заменить tstringlist?На указатель на память. Спасибо! И так же спасибо, что отличаешься от остальных тем, что не просто пишешь посты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:27 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
КотовасияНепонятно, что лучше - тот упоротый анонимус или вот такие топикстартеры. Я думал тут можно задать вопрос, получить вменяемый ответ. Я видать ошибся адресом? Тут хаха с тебя давят. Указывают на твои ошибки, но не говорят как она решается. Лучше конечно такие как я, топикстартеры. Ведь можно поржать не только с нас, но еще и с кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:30 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЯ думал тут можно задать вопрос, получить вменяемый ответ. Не люблю "крылатые" фразы, но здесь уместно: "правильно заданный вопрос содержит половину ответа". Дорогой ТС, учи английский, а не феню! Зачем длл понадобилась? Для выноса кода в длл нужна достаточно веская причина. Просто взять произвольную процедуру и вынести ее в длл - глупость. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:37 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЧтож ладно, я зайду с другой стороны)) объясните как сделать функцию в библе, что бы в неё, программа передавала 3-4 стринга, и 1 stringlist на выходе boolean Используй интерфейсы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:38 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Вместо string -> widestring, вместо tstringlist -> IStringList(который может реализовать на базе TWideStringList) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:43 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЯ видать ошибся адресом? Тут хаха с тебя давят. Указывают на твои ошибки, но не говорят как она решается. Да, ты явно ошибся адресом. Все ошибки в программировании решаются одинаково: приведением кода в соответствие с документацией и логикой. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:43 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
В твоем коде все прекрасно и погоны и какарда и исподня @ Только работать не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:45 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
x1ca4064Tech N9neЯ думал тут можно задать вопрос, получить вменяемый ответ. Не люблю "крылатые" фразы, но здесь уместно: "правильно заданный вопрос содержит половину ответа". Дорогой ТС, учи английский, а не феню! Зачем длл понадобилась? Для выноса кода в длл нужна достаточно веская причина. Просто взять произвольную процедуру и вынести ее в длл - глупость. Решил слезть с delphi7 на Tokyo последнюю. В Tokyo как я понял не работает superobject. Решил попробовать написать длл на 7, и юзать её на токио. ДА, я знаю про Json в токио! Мне хочется ознакомится с dll Если я выучу англ, прочитаю тонну книг, зачем мне вы и ваш форум? Не хочу наколять обстановку, можете считать меня ауе пацанчиком на кортах. Спасибо и до свидания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:46 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
ziv-2014tstringlist -> IStringListIStrings есть. И GetOleStrings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:51 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neЕсли я выучу англ, прочитаю тонну книг Тонна книг не нужна абсолютно, даже килограмм не нужен, даже 100 грамм совсем не обязательно. На 100% достаточно (и необходимо) - документации. А вот её без знания английского (на уровне технических терминов и азов) не осилить, увы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:53 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9neзачем мне вы и ваш форум?Для троллинга, понятное дело ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:54 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, Там на вариантах. Но тоже можно использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 16:58 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, Смотри: В процедуру отдаешь только числа и PChar вместо string. Никаких Form,Memo,StringList и прочего. Процедуру - помешает в exports (иначе основной модуль ее не увидит, не сможет использовать) Соглашение о вызове - stdcall. Если тебе уж очень нужен StringList - создай его внутри процедуры, поработай с ним, уничтожь на выходе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 17:47 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. Подскажите, правильно ли я делаю? И почему superobject, SO(ms) ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 17:48 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_ziv-2014tstringlist -> IStringListIStrings есть. И GetOleStrings На данном этапе я бы не советовал лезть к интерфейсам. Там есть нюансы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 17:48 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. Подскажите, правильно ли я делаю? И почему superobject, SO(ms) ошибка? О, совсем другое дело!!! Помести свой RESPONSE в тут же созданный StringList и отдай его на вход SO. Кстати, а сам SO - он откуда берется (я с SuperObject не работал, поэтому спрашиваю) - это что-то глобально инициализируемое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 17:52 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
DarkMasterО, совсем другое дело!!! Помести свой RESPONSE в тут же созданный StringList и отдай его на вход SO. Кстати, а сам SO - он откуда берется (я с SuperObject не работал, поэтому спрашиваю) - это что-то глобально инициализируемое? упс, мне нужно не ms туда вставлять, а response. Скомпилилось вроде, попробую дальше писать. Насчет superobject, в обычнм проекте просто в uses добовляю, и пишу в коде SO(), без create, free; - вроде работает, думаю делаю правильно. На примерах по карайней мере так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 18:01 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Сделал, скомпилил, в программе вызываю функцию и получаю ошибку. Что я сделал не так?( Программа: Код: pascal 1. 2. 3. 4. 5. 6. 7. DLL: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 18:38 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Извините пж)) передавал не правильные токен или ид сейчас перепроверил - всё ок, всё грузится. спасибо, с горем пополам, немного понял как работать с библой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 18:48 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Объясните пожалуйста еще кое-что)) как мне получить результат из длл в программу? я весь день в дельфи, каша в голове.. вот функция в длл Код: pascal 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2018, 21:38 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, Лучше так Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2018, 11:47 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, В результате функции лучше передавать целочисленные типы. Указатели и прочее лучше передавать через ссылку в переменной (оператор var). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2018, 11:48 |
|
||
|
Поясните за DLL :)
|
|||
|---|---|---|---|
|
#18+
ziv-2014Указатели и прочее лучше передавать через ссылку в переменной (оператор var).Именно так они компилятором и передаются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2018, 19:39 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2040215]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
143ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 434ms |

| 0 / 0 |
