Плагин на C++ [ v0.0 ]

Все что касается разработки, отладки, использования подключаемых модулей.

Moderators: Korney San, marcipan

VoLT
Опытный
Posts: 21
Joined: 01 Sep 2008, 13:08 Mon

Плагин на C++ [ v0.0 ]

Post by VoLT »

И так ... рад вам представить небольшой плагин на C++ от Shelwien Image

PS Обольщаться не стоит работает лишь если больше нет ни одного плагина (если в папке Plugins только он). Надеюсь что найдется добрый волшебник который поправит это
marcipan
Гуру
Posts: 1400
Joined: 11 Jun 2005, 3:55 Sat
Location: Санкт-Петербург

Re: Плагин на C++ [ v0.0 ]

Post by marcipan »

Желательно дать какое-либо описание назначения плагина или положить это описание в архив.
Windows 7 х64, Google Chrome 54.0.2840.99, ИЕ11 \ DM 6.10.2.1527
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

Этот плагин ничего не делает. Единственное его назначение - показать как может выглядеть код плагина на C++.

Вопрос к разработчику: почему нет класса, а сделан просто набор функций?
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
VoLT
Опытный
Posts: 21
Joined: 01 Sep 2008, 13:08 Mon

Re: Плагин на C++ [ v0.0 ]

Post by VoLT »

Qwertiy разраб молчит - лишь переделал плаг тот что на форуме давно лежит ...
holden321
Posts: 9
Joined: 26 Jul 2011, 13:44 Tue

Re: Плагин на C++ [ v0.0 ]

Post by holden321 »

а как вложение скачать? :?
в списке тем, топик помечен как имеющий вложения, внутри темы вложений не видно, а когда пишешь пост, вложения видны но их не скачать (Функция вложений отключена.)
что-то мутное и непонятное :mrgreen:
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

holden321 wrote:а как вложение скачать? :?
что-то мутное и непонятное :mrgreen:
Это администраторы форума так отключили вложения. Вместо смены капчи, чтобы ботов поменьше было, они отключили вложения, да и то криво.

В этой теме есть вложения в двух сообщениях. Когда Вы открываете страницу добавления сообщения, то внизу есть список последних сообщений в теме. В этом списке вложения видно.

На всякий случай (например, если тема обрастёт), вот эти сообщения вместе со ссылками навложения:
VoLT wrote:И так ... рад вам представить небольшой плагин на C++ от Shelwien Image

PS Обольщаться не стоит работает лишь если больше нет ни одного плагина (если в папке Plugins только он). Надеюсь что найдется добрый волшебник который поправит это

dmplug_1.rar (2.61 Кб) Скачиваний: 18
VoLT wrote:Qwertiy разраб молчит - лишь переделал плаг тот что на форуме давно лежит ...

dmplug_2.rar (35.3 Кб) Скачиваний: 16
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

Только вот скачать по этим ссылкам нельзя :(
У меня где-то лежат эти файлы. Если найду, выложу.

PS: Что думаете про создание плагина на VB6?
Насколько я понимаю, на .NET сделать нельзя, хотя есть сомнения про C++.NET, но это ужас :(
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
holden321
Posts: 9
Joined: 26 Jul 2011, 13:44 Tue

Re: Плагин на C++ [ v0.0 ]

Post by holden321 »

спасибо, было бы неплохо :)
думаю сделать на C++, но самому не удалось справиться с интерфейсами, не мой уровень, а изучать неохота и долго, вот и ищу готовое :mrgreen:
holden321
Posts: 9
Joined: 26 Jul 2011, 13:44 Tue

Re: Плагин на C++ [ v0.0 ]

Post by holden321 »

странно, конечно что до сих пор не реализовано заглушек для других языков, ведь от этого все бы только выиграли
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

holden321 wrote:спасибо, было бы неплохо :)
думаю сделать на C++, но самому не удалось справиться с интерфейсами, не мой уровень, а изучать неохота и долго, вот и ищу готовое :mrgreen:
Файлы-вложения из этой темы:
http://upload.com.ua/get/902755419/dmplug_1.rar
http://upload.com.ua/get/902755423/dmplug_2.rar

Ещё добавлю свой плагин на C++. Он показывает MessageBox за 2 минуты до окончания закачки. Информация о его создании есть в этой теме, она может Вам пригодиться. В отличие от кода в тех архивах, мой плагин сделан в VS2010. Существенным её недостатком является огромный размер проекта (121 МБ), поэтому я удалил все файлы, которые посчитал лишними (осталось 13 КБ), однако, я не могу гарантировать, что не удалил что-то нужное (естественно, весь код уцелел). http://upload.com.ua/get/902755498/DMDIESP.7z
holden321 wrote:странно, конечно что до сих пор не реализовано заглушек для других языков, ведь от этого все бы только выиграли
Как-то не очень приходят в голову языки:
С++ - вот.
Delphi - на нём всё и написано - и DM, и (почти?) все плагины.
VB6 - я только недавно узнал о возможности делать Native Dll на нём и ещё не пробовал. Возможно, попытаюсь. А если никто не знает, то и не делает... Там сказано, что FNDLL не очень популярна.
C#, VB.NET - большие сомнения, возможно ли создать на них dll так, чтобы DM увидел фнукцию.
C++.NET - ужасный язык, хотя, может быть, именно он позволяет обойти проблему с .NET и native dll, хотя не факт.
Java - не думаю, что она пригодна.
Что-нибудь ещё популярное забыл?
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
holden321
Posts: 9
Joined: 26 Jul 2011, 13:44 Tue

Re: Плагин на C++ [ v0.0 ]

Post by holden321 »

спасибо, попробуем разобраться
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

Удачи. А что за плагин собираетесь сделать, если не секрет?
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
holden321
Posts: 9
Joined: 26 Jul 2011, 13:44 Tue

Re: Плагин на C++ [ v0.0 ]

Post by holden321 »

да вот понадобилось мне скачать видеоролики из плейлиста youtube, пихнул ссылку в DM, и нефига, не хочет качать все сразу :(
так то, задача не сложная, достать все ссылки и пихнуть в DM в виде списка, но плагином оно будет удобнее :)
кстати использую ваш код, отлично работает, я только изменил объявление экспорта на вот такое
extern "C" __declspec( dllexport ) HRESULT RegisterPlugIn(MyPlugin** out)
а иначе две функции экспортируются (хотя все работает и без этого исправления, просто так выглядит симпотичнее когда одна в экспорте :mrgreen: )
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

holden321 wrote:да вот понадобилось мне скачать видеоролики из плейлиста youtube, пихнул ссылку в DM, и нефига, не хочет качать все сразу :(
так то, задача не сложная, достать все ссылки и пихнуть в DM в виде списка, но плагином оно будет удобнее :)
Я бы скорее сделал программу для получения списка ссылок, чем плагин...
holden321 wrote:кстати использую ваш код, отлично работает, я только изменил объявление экспорта на вот такое
extern "C" __declspec( dllexport ) HRESULT RegisterPlugIn(MyPlugin** out)
а иначе две функции экспортируются (хотя все работает и без этого исправления, просто так выглядит симпотичнее когда одна в экспорте :mrgreen: )
Я правильно понимаю, что Вы просто убрали директиву #pragma? Если да, то я пробовал такой вариант: экспортируемая функция получает имя _RegisterPlugIn@4 и не определяется DM. Какой компилятор?
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

Qwertiy wrote:
holden321 wrote:кстати использую ваш код, отлично работает, я только изменил объявление экспорта на вот такое
extern "C" __declspec( dllexport ) HRESULT RegisterPlugIn(MyPlugin** out)
а иначе две функции экспортируются (хотя все работает и без этого исправления, просто так выглядит симпотичнее когда одна в экспорте :mrgreen: )
Я правильно понимаю, что Вы просто убрали директиву #pragma? Если да, то я пробовал такой вариант: экспортируемая функция получает имя _RegisterPlugIn@4 и не определяется DM. Какой компилятор?
Невнимательно посмотрел. Вы ещё _stdcall убрали. Т. е. получается _cdecl. Это влияет на порядок передачи агрументов (ладно, он 1, поэтому не важно) и на то, кто освобождает память - сама функция или тот, кто её вызвал. Т. о. такое изменение приведёт к утечке памяти или к runtime-error. Такое изменение недопустимо!
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
Post Reply