Архив: Технология создания плагинов

Здесь обсуждаются технические аспекты создания дополнений.
ОреЛ
Сообщения: 376
Зарегистрирован: 11:18, 11.07.2008
Откуда: Ульяновск
Контактная информация:

Re: Технология создания плагинов

Сообщение ОреЛ »

Извините, cilvay, что посмел вас опередить.
Для новичков совет: изучайте внимательно то, что дается разработчиками, а именно примеры (null и Repeater)

Вопрос к Максиму:
Будет ли внесены когда-либо (желательно в ближайших версиях) прием событий Публикация/Редактирование/Удаление объявления/комментария?
Когда пишете программу, всегда думайте о том, что её может затем поддерживать психопат и насильник, который знает где вы живёте.
— Martin Golding
Аватара пользователя
dark
Сообщения: 48
Зарегистрирован: 12:28, 02.02.2007

Re: Технология создания плагинов

Сообщение dark »

cilvay писал(а):вот тока что хотел сказать, но меня опередили
Я то думаю почему код полный как заявили а название плагина еще и с расширением отображается как в папке
Аналогично. Добавление кода в

Код: Выделить всё

DWORD PluginGetData
ничего не меняет. Пробовал и до этого. Еще идеи? Мне кажется, что ошибка в чем-то другом. И да, примеры эти смотрел.
@serg@
Сообщения: 702
Зарегистрирован: 14:50, 20.07.2009

Re: Технология создания плагинов

Сообщение @serg@ »

dark писал(а):
cilvay писал(а):вот тока что хотел сказать, но меня опередили
Я то думаю почему код полный как заявили а название плагина еще и с расширением отображается как в папке
Аналогично. Добавление кода в

Код: Выделить всё

DWORD PluginGetData
ничего не меняет. Пробовал и до этого. Еще идеи? Мне кажется, что ошибка в чем-то другом. И да, примеры эти смотрел.
попробуй откомпиль NULL-плагин, а потом по немногу из него вырезай до твоего примера, тогда и поймёшь в чём ошибка.
Аватара пользователя
dark
Сообщения: 48
Зарегистрирован: 12:28, 02.02.2007

Re: Технология создания плагинов

Сообщение dark »

попробуй откомпиль NULL-плагин, а потом по немногу из него вырезай до твоего примера, тогда и поймёшь в чём ошибка.
Это не путь Джедая.

В доказательство своих слов показываю.
Изображение

Плагин делает все что надо, но ошибка остается.
Вложения
none.png
(24.47 КБ) 105 скачиваний
@serg@
Сообщения: 702
Зарегистрирован: 14:50, 20.07.2009

Re: Технология создания плагинов

Сообщение @serg@ »

dark писал(а):
попробуй откомпиль NULL-плагин, а потом по немногу из него вырезай до твоего примера, тогда и поймёшь в чём ошибка.
Это не путь Джедая.

В доказательство своих слов показываю.
Изображение

Плагин делает все что надо, но ошибка остается.
Всмысле и NULL c такойже ошибкой?
Cilvay
Сообщения: 816
Зарегистрирован: 14:55, 16.06.2008

Re: Технология создания плагинов

Сообщение Cilvay »

у тебя название уехало на 3 строчки вниз в списке плагинов
Аватара пользователя
dark
Сообщения: 48
Зарегистрирован: 12:28, 02.02.2007

Re: Технология создания плагинов

Сообщение dark »

у тебя название уехало на 3 строчки вниз в списке плагинов
Это я замазал другие плагины просто, чтоб не мешали. И да, я их удалял - они не влияют.
Всмысле и NULL c такойже ошибкой?
Более чем уверен, что да. Сейчас не хочу переписывать его на ночь, ибо vcl у меня нет. Мне кажется, что ошибка в чем-то другом.

Upd1. Ошибка повторилась. Пробовал на разных машинах с разными версиями MinGW gсс 3.4.5 и 4.5.0. Итог один и тот же. Идеи?

Upd2. Добавил исходник. От себя ничего не писал лишнего, всё только из примера. У кого заработает - укажите ошибки в коде и параметры компилятора, с которыми это собиралось. Спасибо.

Upd3. А еще лучше - услышать ответ администрации, чтоб пользователи не строили догадки. Благодарю.
Вложения
main.zip
(862 байт) 375 скачиваний
Maxim Mirgorodsky
Администратор
Сообщения: 6869
Зарегистрирован: 09:56, 27.06.2005

Re: Технология создания плагинов

Сообщение Maxim Mirgorodsky »

Из документации:
Требования и соглашения:
1) Расширение у файла плагина должно быть "cfplug". Например “myplugin.cfplug”.
2) Для функций плагина необходимо использовать соглашение _stdcall.
3) Необходимо отключить декорирование функций.
Так как ошибка при вызове функции, то скорее всего не соблюдается пункт 2 или 3.
Maxim Mirgorodsky
Администратор
Сообщения: 6869
Зарегистрирован: 09:56, 27.06.2005

Re: Технология создания плагинов

Сообщение Maxim Mirgorodsky »

ОреЛ писал(а):Извините, cilvay, что посмел вас опередить.
Для новичков совет: изучайте внимательно то, что дается разработчиками, а именно примеры (null и Repeater)

Вопрос к Максиму:
Будет ли внесены когда-либо (желательно в ближайших версиях) прием событий Публикация/Редактирование/Удаление объявления/комментария?
Это возможно только на сервере (потому что клиент не имеет данных о разделах и опубликованных объявлениях). И на сервере уже реализована возможность публикации и удаления объявления или комментария.
Аватара пользователя
dark
Сообщения: 48
Зарегистрирован: 12:28, 02.02.2007

Re: Технология создания плагинов

Сообщение dark »

Maxim Mirgorodsky писал(а):Из документации:
Требования и соглашения:
1) Расширение у файла плагина должно быть "cfplug". Например “myplugin.cfplug”.
2) Для функций плагина необходимо использовать соглашение _stdcall.
3) Необходимо отключить декорирование функций.
Так как ошибка при вызове функции, то скорее всего не соблюдается пункт 2 или 3.
Первое, что я посмотрел - это примеры и документацию. Все пункты соблюдены.
Имена функций после компиляции тоже нормальные, без декорирования.

Идеи?
Вложения
scrd.PNG
(2.68 КБ) 53 скачивания
Последний раз редактировалось dark 12:37, 09.01.2011, всего редактировалось 1 раз.
@serg@
Сообщения: 702
Зарегистрирован: 14:50, 20.07.2009

Re: Технология создания плагинов

Сообщение @serg@ »

dark, в какой среде компилишь?
Аватара пользователя
dark
Сообщения: 48
Зарегистрирован: 12:28, 02.02.2007

Re: Технология создания плагинов

Сообщение dark »

@serg@ писал(а):dark, в какой среде компилишь?
NetBeans. Что использую написал выше. Последний раз вообще собрал из консольки, т.ч. среда не при чем. Результат тот же.
ОреЛ
Сообщения: 376
Зарегистрирован: 11:18, 11.07.2008
Откуда: Ульяновск
Контактная информация:

Re: Технология создания плагинов

Сообщение ОреЛ »

Вопрос к Максиму:
Будет ли внесены когда-либо (желательно в ближайших версиях) для серверных плагинов прием событий Публикация/Редактирование/Удаление объявления/комментария?
На данный момент возможно лишь получение данных о разделах ДО, обо всех объявлений раздела, но нет приема события Публикации или Редактирования или Удаления объявлений или комментария к нему.
P.S.: приношу извинения за повтор вопроса.
Когда пишете программу, всегда думайте о том, что её может затем поддерживать психопат и насильник, который знает где вы живёте.
— Martin Golding
Cilvay
Сообщения: 816
Зарегистрирован: 14:55, 16.06.2008

Re: Технология создания плагинов

Сообщение Cilvay »

я не очень разбираюсь в си, но по моему _stdcall не у всех функций стоит
@serg@
Сообщения: 702
Зарегистрирован: 14:50, 20.07.2009

Re: Технология создания плагинов

Сообщение @serg@ »

ОреЛ тебе уже ответили, читай внимательней.
Закрыто