View previous topic :: View next topic |
Author |
Message |
Моторокер
Joined: 06 May 2005 Posts: 1517 Location: г. Пермь (читается Перьмь)
|
(Separately) Posted: Mon Oct 08, 2007 09:15 Post subject: Лицензия компонента для плагинов (библиотек) |
|
|
Есть лицензия к компоненту:
Terms of use wrote: | This software comes without express or implied warranty.
In no case shall the author be liable for any damage or unwanted behavior of any computer hardware and/or software.
*** grants you the right to include the compiled component in your application, whether COMMERCIAL, SHAREWARE, or FREEWARE, BUT YOU MAY NOT DISTRIBUTE THE SOURCE CODE OR ITS COMPILED .DCU IN ANY FORM.
%%% may not be included in any commercial, shareware or freeware libraries or components.
... |
Синим выделеной мной.
Можно ли использовать компонент для написания плагинов для Total Commander (это библиотеки DLL)?
Или надо написать EXE, а затем вызывать его из плагина?
Вот ответ автора:
Fabrizio wrote: | I know nothing about Total Commander, so I cannot reply this question. Anyway ImageEn cannot be used to build components, libraries, etc (due license limitations). |
Он не знает про Total Commander, но всё равно в библиотеках компонент использовать нельзя. _________________ плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми |
|
Back to top |
|
|
B4rr4cuda
Joined: 03 Jun 2007 Posts: 376 Location: Россия, Москва
|
(Separately) Posted: Mon Oct 08, 2007 13:24 Post subject: |
|
|
Напиши екзешник с экспортами ТСшных фунц.
Лицензия будет соблюдена, тока прописывать плаг в wincmd.ini придёться ручками... |
|
Back to top |
|
|
B4rr4cuda
Joined: 03 Jun 2007 Posts: 376 Location: Россия, Москва
|
(Separately) Posted: Mon Oct 08, 2007 13:29 Post subject: |
|
|
Вдогонку
Quote: | В DPR файле совершенно обычного проэкта дельфи можно указать функцию (процедуру) и объявить ее как экспортируемую - синтаксис точно такой-же как при создании стандартной DLL. С таким довеском EXE совершенно нормально компиллируется и работает и как EXE и как DLL (т.е. из нее можно импортировать описанные функции). Зачем это нужно? Была одна задача - делал консоль которая связывала воедино несколько приложений, так экспортные функции позволяли существенно расширять функциональность комплекса. Правда такой EXE все же имеет недостаток - EXE упаковщики сохраняют исполняемую часть и неправильно упаковывают экспортированную...
|
©DelphiWorld |
|
Back to top |
|
|
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Mon Oct 08, 2007 14:42 Post subject: |
|
|
B4rr4cuda wrote: | Напиши екзешник с экспортами ТСшных фунц. | Это называется - прикинуться шлангом. Понятие "компонент" не формализовано. Если я напишу COM объект в виде экзешника, он не перестанет быть компонентом. |
|
Back to top |
|
|
Моторокер
Joined: 06 May 2005 Posts: 1517 Location: г. Пермь (читается Перьмь)
|
(Separately) Posted: Mon Oct 08, 2007 15:14 Post subject: |
|
|
VadiMGP wrote: | B4rr4cuda wrote: | Напиши екзешник с экспортами ТСшных фунц. | Это называется - прикинуться шлангом. |
Дык компонент и не нужен.
С одной стороны, включать компилированную версию в приложения можно:
Quote: | include the compiled component in your application |
Но если расшарить часть функций приложения (екзешник с экспортами ТСшных фунц), оно станет библиотекой? _________________ плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми |
|
Back to top |
|
|
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Mon Oct 08, 2007 15:20 Post subject: |
|
|
Моторокер wrote: | Дык компонент и не нужен. | Тогда и проблем нет. Если основная функциональность твоей программы доступна сама по себе, без коммандера, то и претензий быть не должно, на мой взгляд.
Добавлено.Например, никто в здравом уме не назовет IrfanView компонентом, хотя он прекрасно обслуживает нужды ТС. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Mon Oct 08, 2007 18:47 Post subject: |
|
|
Моторокер wrote: | Но если расшарить часть функций приложения (екзешник с экспортами ТСшных фунц), оно станет библиотекой? |
Да, станет
Хотя, считать ли плагин к ТС библиотекой, не знаю.
Quote: | Если основная функциональность твоей программы доступна сама по себе, без коммандера, то и претензий быть не должно, на мой взгляд. |
Почти согласен с Вадимгп |
|
Back to top |
|
|
mutex
Joined: 16 Dec 2004 Posts: 134 Location: Казахстан
|
(Separately) Posted: Mon Oct 08, 2007 19:41 Post subject: |
|
|
Quote: | Почти согласен с Вадимгп |
Вадим, к сожалению, не прав.
Quote: | Он не знает про Total Commander, но всё равно в библиотеках компонент использовать нельзя |
Любой плагин является библиотекой, только с нестандартным расширением имени файла. Например, WLX означает WindowsCommander Lister Extension. Т.е. все эти расширения имени файла имеют смысл и придуманы Гислером, что не меняют их сути.
Таким образом, Вы не имеете права на использование данного компонента.
К слову, компонент также является частным случаем библиотеки. _________________ E.Savich
http://www.xbaseview.com |
|
Back to top |
|
|
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Mon Oct 08, 2007 20:19 Post subject: |
|
|
mutex wrote: | Вадим, к сожалению, не прав. | Уточни, пожалуйста, в чем именно?
Я думаю, мы просто по разному понимаем слово "компонент". Я считаю, что фразу "may not be included in any commercial, shareware or freeware libraries or components" надо читать как "не может быть использован при разработке любой коммерческой, шароварной или фриварной библиотеки или компоненты" (вольный стиль). При такой трактовке я не вижу где я неправ. Но возможно, у тебя другое прочтение этой фразы. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Mon Oct 08, 2007 21:01 Post subject: |
|
|
Вот тут ты можешь быть неправ:
>>Если основная функциональность твоей программы доступна сама по себе, без коммандера, то и претензий быть не должно |
|
Back to top |
|
|
mutex
Joined: 16 Dec 2004 Posts: 134 Location: Казахстан
|
(Separately) Posted: Mon Oct 08, 2007 21:47 Post subject: |
|
|
Quote: | Уточни, пожалуйста, в чем именно? |
Если лицензия компонента разрешает включать его только в приложение, то нельзя его использовать в плагинах, независимо от расширения плагина, будь оно wlx, exe или еще что-нибудь другое. Потому что, плагин не является приложением ОС.
Я так понял, но вполне могу ошибиться. _________________ E.Savich
http://www.xbaseview.com |
|
Back to top |
|
|
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Mon Oct 08, 2007 22:32 Post subject: |
|
|
mutex wrote: | то нельзя его использовать в плагинах, независимо от расширения плагина, будь оно wlx, exe или еще что-нибудь другое. | Так я то же самое говорил. Именно поэтому и обозвал совет Барракуды "прикинуться шлангой". Но поскольку Моторокер сказал "Дык компонент и не нужен.", то я понял его так, что у него нет цели разрабатывать именно плагин. Но как-то с ТС это все равно связано. Поэтому и привел пример c Ирфаном - самостоятельная аппликация, никакой не плагин. А то, что ее можно использовать в связке с ТС, это уже "приятный доп. сервис". |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Mon Oct 08, 2007 23:18 Post subject: |
|
|
Quote: | то я понял его так, что у него нет цели разрабатывать именно плагин |
В первом посте написано, что именно плагин.
Опять не понял. |
|
Back to top |
|
|
B4rr4cuda
Joined: 03 Jun 2007 Posts: 376 Location: Россия, Москва
|
(Separately) Posted: Mon Oct 08, 2007 23:55 Post subject: |
|
|
mutex wrote: | Если лицензия компонента разрешает включать его только в приложение, то нельзя его использовать в плагинах, независимо от расширения плагина, будь оно wlx, exe или еще что-нибудь другое. |
Что не запрещенно, то разрешено. Если прямого запрета нет, то почему бы этим не воспользоваться?
Alextp wrote: | В первом посте написано, что именно плагин. Опять не понял. |
Моторокер видимо хочет написать екзешку под управлением плагина. Прямая аналогия с IrfanView.
Лицензия в этом случае сохраняеться в полной мере.
Мой вариант - "експорт из екзе", как правильно выразился VadiMGP, позволяет "прикинуться шлангой" . И поди докажи, что этот плаг не екзе.
Я бы так и сделал, из чувства противоречия. |
|
Back to top |
|
|
B4rr4cuda
Joined: 03 Jun 2007 Posts: 376 Location: Россия, Москва
|
(Separately) Posted: Tue Oct 09, 2007 00:48 Post subject: |
|
|
Очень заинтересовался этим вопросом, появился азарт. Погуглил немного...
Wiki говорит:
Quote: | DLL (англ. Dynamic-link library — динамически подключаемая библиотека) — понятие операционной системы Microsoft Windows; динамическая библиотека, позволяющая многократное применение различными программными приложениями. K DLL относятся также элементы управления ActiveX и драйвера. В мире UNIX аналогичные функции выполняют т. н. shared objects («разделяемые объекты»).
Формат файлов DLL придерживается тех же соглашений, что и формат исполняемых файлов EXE, сочетая код, таблицы и ресурсы. |
Обратите внимание на выделенное.
MSDN говорит:
Quote: | A dynamic-link library (DLL) is a module that contain functions and data that can be used by another module (application or DLL). |
Т.е. любой модуль, будь то приложение или библиотека, содержащий функции или данные, которые могут быть использованны другим приложением или библиотекой, попадает под определение DLL.
НО тот же MSDN уточняет:
Quote: |
Even though DLLs and applications are both executable program modules, they differ in several ways.
To the end-user, the most obvious difference is that DLLs are not programs that can be directly executed. From the system's point of view, there are two fundamental differences between applications and DLLs:
[1] An application can have multiple instances of itself running in the system simultaneously, whereas a DLL can have only one instance.
[2] An application can own things such as a stack, global memory, file handles, and a message queue, but a DLL cannot. |
Т.е. есть два глобальных различия между DLL и EXE:
[1] Приложение (EXE) может ( может - трактовать как имеет возможность) быть запущенно в нескольких экземплярах одновременно.
[2] Приложение может обладать собственным стеком, памятью, указателями и очередью сообщений, а DLL не может.
Кто докажет что EXE с експортами - DLL, "пусть первый бросит в меня камень" © О. Бендер |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|