Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.26;
Скачать: CL | DM;

Вниз

DLL.   Найти похожие ветки 

 
Shopot ©   (2006-11-06 11:13) [0]

Как правильно написать dll в C++ Builder"е, чтобы работала в Delphi. Экспортировать нужно только функции.


 
Array   (2006-11-06 11:18) [1]


> Экспортировать нужно только функции.
>


экспортировать тока имена функций.... а дальше всеравно де вызхывать по имени ... хоть Delphi хоть С++ и т.п.


 
oh   (2006-11-07 11:10) [2]

Shopot в Delphi приложении опишы импортируемые функи как stdcall


 
Nic ©   (2006-11-07 19:46) [3]

Может статью напишем "всё, что вы хотите знать о dll, но боитесь спросить :)" по мотивом целой цепочки веток про dll :)


 
Leonid Troyanovsky ©   (2006-11-07 19:54) [4]


> Nic ©   (07.11.06 19:46) [3]

> Может статью напишем "всё, что вы хотите знать о dll, но
> боитесь спросить :)" по мотивом целой цепочки веток про
> dll :)


Не надо никаких статей, как, собс-но, и никаких длл.
И будет все зашибись.

--
Regards, LVT.


 
Nic ©   (2006-11-07 19:57) [5]


> Leonid Troyanovsky ©   (07.11.06 19:54) [4]

Я заметил, что Вы категорически против разработки DLL в Delphi. Почему?


 
Leonid Troyanovsky ©   (2006-11-07 20:07) [6]


> Nic ©   (07.11.06 19:57) [5]

> Я заметил, что Вы категорически против разработки DLL в
> Delphi. Почему?


Я против разработки длл. Потому, как лишнее.

Разрабатывать надо цельные приложения и
будет всем джа.

--
Regards, LVT.


 
DrPass ©   (2006-11-07 21:23) [7]

Джа пишется с большой буквы


 
Leonid Troyanovsky ©   (2006-11-07 21:27) [8]


> DrPass ©   (07.11.06 21:23) [7]

> Джа пишется с большой буквы


Всем даже без этого будет хорошо.

--
Regards, LVT.


 
Nic ©   (2006-11-07 22:15) [9]

Leonid Troyanovsky ©   (07.11.06 20:07) [6]
Аргументируйте. А как же:
 1) Разработка плагинов;
 2) разработка кроссязычных библиотек;
 3) чем оно плохо?


 
Percent   (2006-11-07 22:42) [10]

[9] Nic ©   (07.11.06 22:15)

Интересно, сколько плагинов и (О, великий Батхикхарма!) кроссязычных библиотек ты разработал за свою жизнь?


 
Nic ©   (2006-11-07 22:47) [11]

Percent   (07.11.06 22:42) [10]

Кто говорил обо мне?
1) Пишу сейчас первую в жизни крупную dll, очень надеюсь реализовать всё задуманное.
2) Я скорее программист-любитель, нежели профессионал => Как Ваш вопрос коррелирует с Nic ©   (07.11.06 19:57) [5]?


 
Percent   (2006-11-07 23:14) [12]

Пишу сейчас первую в жизни крупную dll, очень надеюсь реализовать всё задуманное.

Зачем ты реализуешь это в виде DLL?


 
Eraser ©   (2006-11-07 23:29) [13]

что это так все на DLL ополчились, например в одном из моих проектов целых (о ужосс!) 3 библиотеки DLL, из которы 2 нельзя было оформить по-другоме, кроме как в DLL.


 
Percent   (2006-11-07 23:36) [14]

Да никто на них не ополчался. Просто, прежде чем использовать DLL, надо понимать, с какой целью это делается, и какие побочные эффекты от этого последуют.
Кроме того, скальпель Оккама еще никто пока не отменял...


 
Nic ©   (2006-11-07 23:37) [15]


> Percent   (07.11.06 23:14) [12]

Для того, чтобы использовать её во множестве будущих проектов.


 
Nic ©   (2006-11-07 23:39) [16]

Percent   (07.11.06 23:36) [14]
Цели (в моём случае):
1) Абстрагирование от громоздкого, многократно повторяющегося кода;
2) распространение разработки в виде dll;


 
Percent   (2006-11-07 23:42) [17]

Для того, чтобы использовать её во множестве будущих проектов.

То есть, unit тебя уже не устраивает?

1) Абстрагирование от громоздкого, многократно повторяющегося кода;

Это и процедурное программирование позволяет. DLL зачем?

2) распространение разработки в виде dll;

Зачем DLL? Чем обычный exe не устраивает?


 
Nic ©   (2006-11-07 23:45) [18]

Percent   (07.11.06 23:42) [17]
1) Есть идея продавать разработку, а исходниками раскидываться не хочется.
2) есть что-то, почему НЕ следует делать это в dll?


 
Percent   (2006-11-07 23:49) [19]

1) Есть идея продавать разработку, а исходниками раскидываться не хочется.

Так чем же единый exe в данном случае не подходит?

есть что-то, почему НЕ следует делать это в dll?

Здравый смысл. И (повторюсь) скальпель Оккама. Зачем DLL?


 
DrPass ©   (2006-11-07 23:53) [20]


> Percent   (07.11.06 23:49) [19]

Ну вот написал ты библиотеку переиспользуемого кода (например, функции криптования или реализацию какого-либо протокола передачи информации, и т.д.). Как ее распространять? По сути, есть только два варианта - либо в виде СОМ-объекта, либо в виде DLL. И первый вариант далеко не всегда предпочтительный


 
Percent   (2006-11-08 00:00) [21]

Ну вот написал ты библиотеку переиспользуемого кода

Я реализую это в юнитах: в виде классов, процедур, функций...

Как ее распространять?

Ты много своих проектов распространил? Много незаменимых библиотек написал? Много алгоритмов криптования разработал и реализовал? Много протоколов передачи, которыми заинтересовался еще кто-то, кроме тебя?

Ась?... ;-)


 
DrPass ©   (2006-11-08 00:33) [22]


> Я реализую это в юнитах: в виде классов, процедур, функций.
> ..

...и используешь только в своей Delphi

Много незаменимых
> библиотек написал?

Библиотек - немного. Но я и DLL не использую. Если бы писал - обязательно бы использовал. И не болтал ерундой, что это, видите ли, неправильно :-Р


 
Anatoly Podgoretsky ©   (2006-11-08 08:46) [23]

> Nic  (07.11.2006 19:46:03)  [3]

Там хватит одной строки - Не используйте ДЛЛ


 
Anatoly Podgoretsky ©   (2006-11-08 08:47) [24]

> Nic  (07.11.2006 19:57:05)  [5]

А ты видел количество ошибок и проблем.
А реальные обоснования, зачем вам в вашей программе потребовались ДЛЛ, которые вы к тому же не понимает и не умеет писать. Обычно ответ выглядит в стиле - КРУТО


 
Anatoly Podgoretsky ©   (2006-11-08 08:48) [25]

> Nic  (07.11.2006 22:15:09)  [9]

Как правило не первого не второго.
А третей аргументрации не требует, достаточно почитать любой форум


 
Nic ©   (2006-11-08 08:50) [26]

Anatoly Podgoretsky ©   (08.11.06 08:46) [23]
Вы тоже против использования DLL? %)


 
Anatoly Podgoretsky ©   (2006-11-08 08:50) [27]

> Nic  (07.11.2006 22:47:11)  [11]

1. Зачем пишешь, аргументы в пользу именно этой ДЛЛ привести можешь.

2. Не имеет значения.

Пока впечатление, что круто


 
Anatoly Podgoretsky ©   (2006-11-08 08:50) [28]

> Eraser  (07.11.2006 23:29:13)  [13]

> из которы 2 нельзя было оформить по-другоме, кроме как в DLL.

Уверен?

Хорошо, а почему тогда три сделал, а не две?


 
Anatoly Podgoretsky ©   (2006-11-08 08:51) [29]

> Percent  (07.11.2006 23:36:14)  [14]

Бритву, брат бритву.


 
Anatoly Podgoretsky ©   (2006-11-08 08:51) [30]

> Nic  (07.11.2006 23:37:15)  [15]

unit dcu точно также можно использовать во множестве будущих проектов.


 
Nic ©   (2006-11-08 08:52) [31]

Anatoly Podgoretsky ©   (08.11.06 08:47) [24]
Угу, не умею. Хочется научиться :)


 
Anatoly Podgoretsky ©   (2006-11-08 08:53) [32]

> Nic  (07.11.2006 23:39:16)  [16]

1. unit dcu/bpl это реализуют еще с большим успехом
2. ты что? Смеешься. У тебя закрытый проект?


 
Anatoly Podgoretsky ©   (2006-11-08 08:54) [33]

> Nic  (07.11.2006 23:45:18)  [18]

1. dcu/bpl это обеспечивает
2. почитай форумы, при повторении, что то можно будет забыть. Главный тезис ты мазохист или садомазохист?


 
Anatoly Podgoretsky ©   (2006-11-08 08:56) [34]

> DrPass  (07.11.2006 23:53:20)  [20]

Довыды ДА тоже можно найти, но тогда пусть выкладывает все карты на стол. Там и посмотрим так ли нужна ему ДЛЛ или хватит EXE/BPL/DCU


 
Nic ©   (2006-11-08 08:56) [35]

Anatoly Podgoretsky ©   (08.11.06 08:54) [33]
Почитаю. В любом случае спасибо за Ваше мнение.


 
Anatoly Podgoretsky ©   (2006-11-08 08:56) [36]

> Percent  (08.11.2006 00:00:21)  [21]

Планов громадье, Билл скоро будет в долг просить.


 
Anatoly Podgoretsky ©   (2006-11-08 08:57) [37]

> DrPass  (08.11.2006 00:33:22)  [22]

>  И не болтал ерундой, что это, видите ли, неправильно :-Р

Сообственно никто не болтает, вопрос только один Зачем? Ответа не слышно.


 
Anatoly Podgoretsky ©   (2006-11-08 09:01) [38]

> Nic  (08.11.2006 08:56:35)  [35]

Тебя не ругают, а спрашивают, хочешь компетентный ответ, выкладывай все карты на стол, пока по опыту предыдущих лет были только редкие исключения, когда действительно нужна была ДЛЛ. Но они настолько редки, что и вспомнить то трудно. Зато полученый геморой налицо.


 
Anatoly Podgoretsky ©   (2006-11-08 09:02) [39]

> Nic  (08.11.2006 08:52:31)  [31]

Я подозревал, когда научишься и вопрос стоять не будет. Сообственно для этого нужна только трезвая голова и лист бумаги поделенный на две части ЗА и ПРОТИВ


 
Anatoly Podgoretsky ©   (2006-11-08 09:03) [40]

> Nic  (08.11.2006 08:50:26)  [26]

Я не против использования ДЛЛ, более того любая программа их использует, в виде системных ДЛЛ, я против из бездумного использования, ради моды, ради крутизны.


 
Nic ©   (2006-11-08 09:05) [41]

Anatoly Podgoretsky ©   (08.11.06 09:01) [38]

Если рассматривать мой проект, который пока только в планах, то графический движок удобнее использовать в виде dll, т.к. можно использовать не только в Delphi, но и VB, C#, C++, Dark Basic и многих других языках программирования. Минус - труднопонимаемые ошибки типа AV, некоторые неудобства в работе.


 
Anatoly Podgoretsky ©   (2006-11-08 09:20) [42]

> Nic  (08.11.2006 09:05:41)  [41]

При таком уровне, библиотеки должны соответствовать уровню СИ, не путать с С++
Видимо ты вышел за это ограничение. Кроме того ты и те кто будет писать должны быть на Вы с указателями. Либо переходить на СОМ но тоже почти с теми же ограничения, но поменьше.


 
Nic ©   (2006-11-08 09:31) [43]


> Anatoly Podgoretsky ©   (08.11.06 09:20) [42]

Уровень Си - я так понимаю это отказ от использования таких типов как String, а также VCL?


 
Nic ©   (2006-11-08 09:35) [44]

+ указатели. Надо значит почитать Тейксеру и Пачеко :)


 
Anatoly Podgoretsky ©   (2006-11-08 09:43) [45]

Каких string и VCL, шире например, любых классов, только простые типы СИ
Вот тогда можно будет говорить об подлинных ДЛЛ, написаных на любом языке, и используемых в любом языке, а если учесть и фортран, то использовать можно только указатели и только на простые типы.


 
Anatoly Podgoretsky ©   (2006-11-08 09:44) [46]

> + указатели. Надо значит почитать Тейксеру и Пачеко :)
Начинать надо с ассеблера, потом Си и только потом Пачеко


 
Percent   (2006-11-08 10:17) [47]

Anatoly Podgoretsky ©

Подписываюсь под каждым постом.

Если рассматривать мой проект, который пока только в планах, то графический движок удобнее использовать в виде dll, т.к. можно использовать не только в Delphi, но и VB, C#, C++, Dark Basic и многих других языках программирования.

Я, так же, как и ты, верю в то, что, после выхода релиза твоего графического движка, огромное количество программистов на "Delphi, VB, C#, C++, Dark Basic и многих других языках программирования" по всему миру тут же начнут его использование, поэтому реализовать твой движок необходимо именно в виде DLL!
Но, увы, это огромное количество программистов по всему миру в это не верят. Что делать будем? Убеждать? Силой... ;-)


 
Nic ©   (2006-11-08 12:45) [48]

Percent   (08.11.06 10:17) [47]

:) Ну нельзя же быть настолько скептичным ;)


 
Eraser ©   (2006-11-08 14:11) [49]

> [28] Anatoly Podgoretsky ©   (08.11.06 08:50)


> Уверен?
>
> Хорошо, а почему тогда три сделал, а не две?

Да, т.к. одна предназначена для внедрения в ВАП других процессов (это требуется для осуществления нужной функционльности), другая - Winlogon Notification Package (тут вообще по-другому никак), ну а третия экспортирует всего 5 ф-ций и делает 1 callback вызов, оформил в виде ДЛЛ просто потому что показалось, что так лучше, т.к. эту же библиотеку использует другая программа из этого же продукта, хотя в посл. случае можно было обойтись просто общим модулем, но зато это было бы не так экономично.


 
evvcom ©   (2006-11-08 14:34) [50]

Я за все время написал всего 2 dll: одна - плагин к продукту сторонней компании, другая - COM-сервер опять же для работы с ним из стороннего продукта.
В своих же проектах так и не увидел преимуществ использования dll перед целиковым exe. Есть (была) задумка разбить проект на пакеты (bpl), но руки пока не доходят, и не знаю дойдут ли? Острой необходимости пока нет.
Выходит я тоже против dll? Видимо, да.


 
Anatoly Podgoretsky ©   (2006-11-08 14:34) [51]

> Eraser  (08.11.2006 14:11:49)  [49]

Ну так это то место, где это уместно и выбор сделал осознано.


 
Megabyte ©   (2006-11-08 14:54) [52]

Dll пока не писал(разбил свой проект 1-й раз на части с помощью bpl). Но в будущем планирую заняться, чтобы к тому времени, когда будет необходимость, знал хотя бы часть подводных камней...


 
Anatoly Podgoretsky ©   (2006-11-08 15:30) [53]

> Megabyte  (08.11.2006 14:54:52)  [52]

Подводных камней не будет если будешь использовать простые типы СИ


 
oh   (2006-11-08 17:21) [54]

хехе ничего себе нафлудили)
а как насчет хуков? тоже через эгзэ ? или прикажете драйвер песать?


 
Ketmar ©   (2006-11-08 17:23) [55]

>[54] oh 8-Nov-2006, 17:21
>а как насчет хуков?
а зачем?


 
Рядовой воин дзена ©   (2006-11-08 17:24) [56]

Удалено модератором
Примечание: Нарушение правил по разным никам в одной ветке


 
Рядовой воин дзена ©   (2006-11-08 17:25) [57]

Удалено модератором


 
Рядовой воин дзена ©   (2006-11-08 17:25) [58]

Удалено модератором


 
Ketmar ©   (2006-11-08 18:29) [59]

>[56] Рядовой воин дзена(c) 8-Nov-2006, 17:24
>ггг а зачем тогда есть такая функа?)))
класс. с крыши, например, можно прыгать. зачем такая возможность?


 
Eraser ©   (2006-11-08 21:02) [60]

> [55] Ketmar ©   (08.11.06 17:23)
> >[54] oh 8-Nov-2006, 17:21
> >а как насчет хуков?
> а зачем?

чтобы "отслеживать активность пользователей" :))


 
BiN ©   (2006-11-08 21:25) [61]

"длл, не длл..."
Как бизнес скажет, так и будем делать.
фанатики, блин.


 
Anatoly Podgoretsky ©   (2006-11-08 23:48) [62]

> oh  (08.11.2006 17:21:54)  [54]

Хочешь об этом поговорить? Так у нас форум открытый создавай свою ветку.


 
Ketmar ©   (2006-11-09 01:04) [63]

>[61] BiN(c) 8-Nov-2006, 21:25
>Как бизнес скажет, так и будем делать.
>фанатики, блин.
задача правильного манагера -- убедить заказчика, что правильно будет так, как удобно девелоперам. %-)


 
BiN ©   (2006-11-09 09:46) [64]


> Ketmar ©   (09.11.06 01:04) [63]
>
> задача правильного манагера -- убедить заказчика, что правильно
> будет так, как удобно девелоперам. %-)
>

Задача правильного манагера - выжать из заказчика максимум бабла в минимальные сроки. А девелоперы - негры IT-рынка, так уж повелось. -)



Страницы: 1 2 вся ветка

Текущий архив: 2006.11.26;
Скачать: CL | DM;

Наверх




Память: 0.63 MB
Время: 0.062 c
2-1162847539
eugeniya2006
2006-11-07 00:12
2006.11.26
События, нажатие кнопки


2-1162985555
Raekon
2006-11-08 14:32
2006.11.26
Проблема с Type


4-1152858810
Mamed
2006-07-14 10:33
2006.11.26
rapi. delete file


15-1162997858
Prohodil Mimo
2006-11-08 17:57
2006.11.26
Любителям гольфа


2-1162835085
ice321i
2006-11-06 20:44
2006.11.26
Проблемма переноса ZipTV