Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Лицензия компонента для плагинов (библиотек)
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Написание плагинов для Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Моторокер



Joined: 06 May 2005
Posts: 1517
Location: г. Пермь (читается Перьмь)

Post (Separately) Posted: Mon Oct 08, 2007 09:15    Post subject: Лицензия компонента для плагинов (библиотек) Reply with quote

Есть лицензия к компоненту:
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
View user's profile Send private message
B4rr4cuda



Joined: 03 Jun 2007
Posts: 376
Location: Россия, Москва

Post (Separately) Posted: Mon Oct 08, 2007 13:24    Post subject: Reply with quote

Напиши екзешник с экспортами ТСшных фунц.
Лицензия будет соблюдена, тока прописывать плаг в wincmd.ini придёться ручками...
Back to top
View user's profile Send private message
B4rr4cuda



Joined: 03 Jun 2007
Posts: 376
Location: Россия, Москва

Post (Separately) Posted: Mon Oct 08, 2007 13:29    Post subject: Reply with quote

Вдогонку
Quote:
В DPR файле совершенно обычного проэкта дельфи можно указать функцию (процедуру) и объявить ее как экспортируемую - синтаксис точно такой-же как при создании стандартной DLL. С таким довеском EXE совершенно нормально компиллируется и работает и как EXE и как DLL (т.е. из нее можно импортировать описанные функции). Зачем это нужно? Была одна задача - делал консоль которая связывала воедино несколько приложений, так экспортные функции позволяли существенно расширять функциональность комплекса. Правда такой EXE все же имеет недостаток - EXE упаковщики сохраняют исполняемую часть и неправильно упаковывают экспортированную...

©DelphiWorld
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Mon Oct 08, 2007 14:42    Post subject: Reply with quote

B4rr4cuda wrote:
Напиши екзешник с экспортами ТСшных фунц.
Это называется - прикинуться шлангом. Smile Понятие "компонент" не формализовано. Если я напишу COM объект в виде экзешника, он не перестанет быть компонентом.
Back to top
View user's profile Send private message
Моторокер



Joined: 06 May 2005
Posts: 1517
Location: г. Пермь (читается Перьмь)

Post (Separately) Posted: Mon Oct 08, 2007 15:14    Post subject: Reply with quote

VadiMGP wrote:
B4rr4cuda wrote:
Напиши екзешник с экспортами ТСшных фунц.
Это называется - прикинуться шлангом. Smile

Дык компонент и не нужен.

С одной стороны, включать компилированную версию в приложения можно:
Quote:
include the compiled component in your application


Но если расшарить часть функций приложения (екзешник с экспортами ТСшных фунц), оно станет библиотекой?
_________________
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Mon Oct 08, 2007 15:20    Post subject: Reply with quote

Моторокер wrote:
Дык компонент и не нужен.
Тогда и проблем нет. Если основная функциональность твоей программы доступна сама по себе, без коммандера, то и претензий быть не должно, на мой взгляд.
Добавлено.Например, никто в здравом уме не назовет IrfanView компонентом, хотя он прекрасно обслуживает нужды ТС.
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Oct 08, 2007 18:47    Post subject: Reply with quote

Моторокер wrote:
Но если расшарить часть функций приложения (екзешник с экспортами ТСшных фунц), оно станет библиотекой?


Да, станет
Хотя, считать ли плагин к ТС библиотекой, не знаю.


Quote:
Если основная функциональность твоей программы доступна сама по себе, без коммандера, то и претензий быть не должно, на мой взгляд.

Почти согласен с Вадимгп
Back to top
View user's profile Send private message
mutex



Joined: 16 Dec 2004
Posts: 134
Location: Казахстан

Post (Separately) Posted: Mon Oct 08, 2007 19:41    Post subject: Reply with quote

Quote:
Почти согласен с Вадимгп

Вадим, к сожалению, не прав.
Quote:
Он не знает про Total Commander, но всё равно в библиотеках компонент использовать нельзя

Любой плагин является библиотекой, только с нестандартным расширением имени файла. Например, WLX означает WindowsCommander Lister Extension. Т.е. все эти расширения имени файла имеют смысл и придуманы Гислером, что не меняют их сути.
Таким образом, Вы не имеете права на использование данного компонента. Sad

К слову, компонент также является частным случаем библиотеки.
_________________
E.Savich
http://www.xbaseview.com
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Mon Oct 08, 2007 20:19    Post subject: Reply with quote

mutex wrote:
Вадим, к сожалению, не прав.
Уточни, пожалуйста, в чем именно?
Я думаю, мы просто по разному понимаем слово "компонент". Я считаю, что фразу "may not be included in any commercial, shareware or freeware libraries or components" надо читать как "не может быть использован при разработке любой коммерческой, шароварной или фриварной библиотеки или компоненты" (вольный стиль). При такой трактовке я не вижу где я неправ. Но возможно, у тебя другое прочтение этой фразы.
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Oct 08, 2007 21:01    Post subject: Reply with quote

Вот тут ты можешь быть неправ:

>>Если основная функциональность твоей программы доступна сама по себе, без коммандера, то и претензий быть не должно
Back to top
View user's profile Send private message
mutex



Joined: 16 Dec 2004
Posts: 134
Location: Казахстан

Post (Separately) Posted: Mon Oct 08, 2007 21:47    Post subject: Reply with quote

Quote:
Уточни, пожалуйста, в чем именно?


Если лицензия компонента разрешает включать его только в приложение, то нельзя его использовать в плагинах, независимо от расширения плагина, будь оно wlx, exe или еще что-нибудь другое. Потому что, плагин не является приложением ОС.
Я так понял, но вполне могу ошибиться. Smile
_________________
E.Savich
http://www.xbaseview.com
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Mon Oct 08, 2007 22:32    Post subject: Reply with quote

mutex wrote:
то нельзя его использовать в плагинах, независимо от расширения плагина, будь оно wlx, exe или еще что-нибудь другое.
Так я то же самое говорил. Smile Именно поэтому и обозвал совет Барракуды "прикинуться шлангой". Но поскольку Моторокер сказал "Дык компонент и не нужен.", то я понял его так, что у него нет цели разрабатывать именно плагин. Но как-то с ТС это все равно связано. Поэтому и привел пример c Ирфаном - самостоятельная аппликация, никакой не плагин. А то, что ее можно использовать в связке с ТС, это уже "приятный доп. сервис".
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Oct 08, 2007 23:18    Post subject: Reply with quote

Quote:
то я понял его так, что у него нет цели разрабатывать именно плагин

В первом посте написано, что именно плагин.
Опять не понял.
Back to top
View user's profile Send private message
B4rr4cuda



Joined: 03 Jun 2007
Posts: 376
Location: Россия, Москва

Post (Separately) Posted: Mon Oct 08, 2007 23:55    Post subject: Reply with quote

mutex wrote:
Если лицензия компонента разрешает включать его только в приложение, то нельзя его использовать в плагинах, независимо от расширения плагина, будь оно wlx, exe или еще что-нибудь другое.

Что не запрещенно, то разрешено. Если прямого запрета нет, то почему бы этим не воспользоваться?

Alextp wrote:
В первом посте написано, что именно плагин. Опять не понял.

Моторокер видимо хочет написать екзешку под управлением плагина. Прямая аналогия с IrfanView.
Лицензия в этом случае сохраняеться в полной мере.

Мой вариант - "експорт из екзе", как правильно выразился VadiMGP, позволяет "прикинуться шлангой" Smile . И поди докажи, что этот плаг не екзе. Smile
Я бы так и сделал, из чувства противоречия. Very Happy
Back to top
View user's profile Send private message
B4rr4cuda



Joined: 03 Jun 2007
Posts: 376
Location: Россия, Москва

Post (Separately) Posted: Tue Oct 09, 2007 00:48    Post subject: Reply with quote

Очень заинтересовался этим вопросом, появился азарт. Погуглил немного...

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
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Написание плагинов для Total Commander All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
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