noTrash [плагин для клиента]

Здесь содержатся плагины, графические оболочки, наборы смайлов и другие дополнения к CommFort.
Аватара пользователя
Dj Arktic
Сообщения: 99
Зарегистрирован: 22:55, 04.12.2010

Re: noTrash [плагин для клиента]

Сообщение Dj Arktic »

KGB
Огромное спасибо.

В версии 1.0.4 файл конфигурации будет в %AppData%

Cilvay

Лень скачивать =)
Будет необходимость - перейду на 2009
ОреЛ
Сообщения: 376
Зарегистрирован: 11:18, 11.07.2008
Откуда: Ульяновск
Контактная информация:

Re: noTrash [плагин для клиента]

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

Интересно было бы, чтобы для каждой фразы своя заменяемая была. И еще, чтобы при параметре "Содержит" можно было бы заменять кусок текста на нужный.
Когда пишете программу, всегда думайте о том, что её может затем поддерживать психопат и насильник, который знает где вы живёте.
— Martin Golding
Cilvay
Сообщения: 816
Зарегистрирован: 14:55, 16.06.2008

Re: noTrash [плагин для клиента]

Сообщение Cilvay »

Нашел косячок)
Если плагин запустить и нажать "настройки" то появится окно настроек. Если еще раз нажать "настройки" то появится еще окно настроек. Так можно наживать n раз и появится n окон настроек)) И если остановить плагин то закрывается только первое окно настроек, а все остальные остаются) Ну я наоткрывал 7 окон настроек, нажал "остановить плагин" осталось их всего 6.
Кароче, форму лучше создавать в функции PluginStart а уже при нажатии "настройки" тупо вызывать Form1.show; и больше ничего лишнего
Аватара пользователя
Dj Arktic
Сообщения: 99
Зарегистрирован: 22:55, 04.12.2010

Re: noTrash [плагин для клиента]

Сообщение Dj Arktic »

ОреЛ

Окей. В следующих версиях будет.

Cilvay

Учту.
Аватара пользователя
Dj Arktic
Сообщения: 99
Зарегистрирован: 22:55, 04.12.2010

Re: noTrash [плагин для клиента]

Сообщение Dj Arktic »

KGB писал(а):Если плагин делается на основе примера -=SJ=-, то так должно работать:
Насчет 1го параметра - спорный вопрос, в примерах от разработчиков здесь он есть.
Я имею ввиду что не нужен параметр dwPluginID
KGB
Сообщения: 659
Зарегистрирован: 08:54, 13.07.2010
Откуда: Чебоксары, Россия
Контактная информация:

Re: noTrash [плагин для клиента]

Сообщение KGB »

Я тоже про него. В официальных примерах:

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

typedef DWORD __stdcall (*typeCommFortGetData)(DWORD dwPluginID, DWORD dwID, BYTE * bInBuffer, DWORD dwInBufferSize, BYTE * bOutBuffer, DWORD dwOutBufferSize);
-=SJ=- в своем примере на Delphi почему-то этот параметр убрал, возможно, я просто о чем-то не знаю)
Аватара пользователя
Dj Arktic
Сообщения: 99
Зарегистрирован: 22:55, 04.12.2010

Re: noTrash [плагин для клиента]

Сообщение Dj Arktic »

KGB писал(а):Если плагин делается на основе примера -=SJ=-, то так должно работать:

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

function AskPluginTempPath():WideString;
var 
    aData : AnsiString;
    iSize, iReadOffset : Integer;
    uVersion : WideString;
begin
iSize := CommFortGetData(2010, nil, 0, nil, 0); //получаем объем буфера
SetLength(aData, iSize);
CommFortGetData(2010, PAnsiChar(aData), iSize, nil, 0);//заполняем буфер
iReadOffset := 0;
Result := fReadText(PAnsiChar(aData), iReadOffset);
end;
Хах.. как это ни странно, но при выполнении этой функции коммфорт вместе с плагином ложится...
KGB
Сообщения: 659
Зарегистрирован: 08:54, 13.07.2010
Откуда: Чебоксары, Россия
Контактная информация:

Re: noTrash [плагин для клиента]

Сообщение KGB »

Dj Arktic писал(а): Хах.. как это ни странно, но при выполнении этой функции коммфорт вместе с плагином ложится...
Проверил. У -=SJ=- действительно ошибка (или она была исправлена в последней версии его примера, не знаю, вложения с форума удалились): в CommFortGetData нужен первый параметр - ID плагина.
Чтобы все работало, необходимы следующие изменения:
1. Изменить тип TCommFortGetData следующим образом:

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

TCommFortGetData = function(dwPluginID : DWORD; dwID : DWORD; bInBuffer : PAnsiChar; dwInBufferSize : DWORD; bOutBuffer : PAnsiChar; dwOutBufferSize : DWORD): DWORD; stdcall;
2. Соответственно, функция должна быть такой:

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

function AskPluginTempPath():WideString;
var
  aData : AnsiString;
  iSize, iReadOffset : Integer;
begin
  iSize := CommFortGetData(dwPluginID, 2010, nil, 0, nil, 0); //получаем объем буфера
  SetLength(aData, iSize);
  CommFortGetData(dwPluginID, 2010, PAnsiChar(aData), iSize, nil, 0);//заполняем буфер
  iReadOffset := 0;
  Result := fReadText(PAnsiChar(aData), iReadOffset);
end;
Компилировал, запускал, она работает.
LepreconSTR
Сообщения: 74
Зарегистрирован: 22:19, 11.11.2009

Re: noTrash [плагин для клиента]

Сообщение LepreconSTR »

полезно бы было реализовать функцию замены только части сообщения на свой текст.
Аватара пользователя
Dj Arktic
Сообщения: 99
Зарегистрирован: 22:55, 04.12.2010

Re: noTrash [плагин для клиента]

Сообщение Dj Arktic »

KGB
Огромное спасибо.

LepreconSTR
Планирую это в будущем... Ща у меня немного времени на плагин, тк я делаю другой проект.
Аватара пользователя
зёзя
Сообщения: 1511
Зарегистрирован: 00:18, 02.05.2010
Откуда: Бессарабия

Re: noTrash [плагин для клиента]

Сообщение зёзя »

плагин 1.0.3 когда включен и пры запуске комфорта очень сильно долго запускается идёт подвисание убирите чтоб не подвесал комфорт при запуске
LepreconSTR
Сообщения: 74
Зарегистрирован: 22:19, 11.11.2009

Re: noTrash [плагин для клиента]

Сообщение LepreconSTR »

Не хватает более обширной фильтрации сообщений. Например удалять сообщения которые соответствуют маске определенного пользователя в определенном канале.
Аватара пользователя
зёзя
Сообщения: 1511
Зарегистрирован: 00:18, 02.05.2010
Откуда: Бессарабия

Re: noTrash [плагин для клиента]

Сообщение зёзя »

LepreconSTR писал(а):Не хватает более обширной фильтрации сообщений. Например удалять сообщения которые соответствуют маске определенного пользователя в определенном канале.



чё делать? Так я не понял какая фильтрация и что удолять)))))
LepreconSTR
Сообщения: 74
Зарегистрирован: 22:19, 11.11.2009

Re: noTrash [плагин для клиента]

Сообщение LepreconSTR »

зёзя писал(а):
LepreconSTR писал(а):Не хватает более обширной фильтрации сообщений. Например удалять сообщения которые соответствуют маске определенного пользователя в определенном канале.



чё делать? Так я не понял какая фильтрация и что удолять)))))
Главное что б автор понял)))
Аватара пользователя
Dj Arktic
Сообщения: 99
Зарегистрирован: 22:55, 04.12.2010

Re: noTrash [плагин для клиента]

Сообщение Dj Arktic »

Понятно...
Насчет более полной фильтрации - доите Максима, чтобы расширял функционал премодерации.
Я собираюсь делать это и сейчас, но предупреждаю, что плагин будет подгружать систему...

зёзя, не знаю что у тебя там виснет, плагин не выполняет никаких "неземных" операций.
Ответить