Нужно чуть-чуть поправить плугин к миранде - UINBackup называется ... исходники есть на сайте миранды .... если имеются желающие попробовать - напишу, что хочу.
Может еще кому пригодится.
1. В этом плугине, когда происходит импорт контактов из .CLB юзеру выводится окошко о том, сколько контактов всего и сколько успешно импортировано. Дак вот, пока юзер не нажмет OK, файл остается открытым. А отдельные бухи очень не любят нажимать на лишние кнопки. Треба пофиксить.
2. Очень хочется добавить такую функциональность - не тупое копирование недостающих контактов, а чтобы контакты, которые удалены/перенесены по группам/переименованы, правильно обрабатывались.
По поводу пункта 2 могу предложить два варианта возможной реализации:
1. Смотрим CLB и локальный контакт лист.
Находим в CLB первую группу пользователей. Если такая группа есть локально, удаляем содержимое, импортируем всех пользователей группы из CLB. Если такой группы нет, создаем и импортируем содержимое.
Ищем следующую группу в CLB итд ...
Данное правило не распространяется на корневую группу.
2. Я тупо создаю еще один файл со списком групп, которые нужно удалить вместе с пользователями, а потом импортировать заново ...
Данное правило не распространяется на корневую группу.
Естественно оба правила можно заоптимизировать на предмет того, что может и не надо полностью удалять всех пользователей, а потом заново импортировать, а работать только с изменениями.
BTW ... если начнет получаться - нада договориться о способах оплаты.
Добавлено спустя 9 минут 10 секунд:
Нашел кусок по п1
if (i == 1)
wsprintf(trStr, Translate("%d contact imported\nThere are %d contacts in the database"), i, CallService(MS_DB_CONTACT_GETCOUNT, 0, 0));
else
wsprintf(trStr, Translate("%d contacts imported\nThere are %d contacts in the database"), i, CallService(MS_DB_CONTACT_GETCOUNT, 0, 0));
if (!(startup && i == 0)) //Don't show a message if autoimport and no contacts imported
MessageBox(NULL, trStr, Translate("Done"),MB_OK);
CloseHandle(inFile); //We are done with the file
Да, я его (кусок) уже заметил. В принципе там переменные startup и i влияют. Я пока не смотрел откуда они.
Тебе просто закрывать файл ДО окошка или вообще выбросить окошко?
Типа умею, хотя не родной язык. Кидай ссылки, посмотрим.
А кому счас легко...
Вот исходник.
Проблем собственно две:
1. В этом плугине, когда происходит импорт контактов из .CLB юзеру выводится окошко о том, сколько контактов всего и сколько успешно импортировано. Дак вот, пока юзер не нажмет OK, файл остается открытым. А отдельные бухи очень не любят нажимать на лишние кнопки. Треба пофиксить.
2. Очень хочется добавить такую функциональность - не тупое копирование недостающих контактов, а чтобы контакты, которые удалены/перенесены по группам/переименованы, правильно обрабатывались.
Гляну завтра.
Проблема N1 - думаю, решается парой строчек.
Проблема N2 - не знаю пока.
А кому счас легко...
Ну я собственно так и предполагал....
Еще, если можно - ссылку на исходники миранды (или что там у нее - SDK типа) в удобном виде типа архива - нужны *.h-файлы оттуда.
А кому счас легко...
savely_s
боюсь, придется поставить SVN.
sourceforge.net/projects/miranda
либо есть сурцы на старую версию 0.3.3.1:
prdownloads.sourceforge.net/miranda-icq/miranda-im-v0.3.3.1-src.zip
PS: в последнем файле SDK у меня есть
Аццкий ромбовод {:€
Я пока не волшебник - я только учусь! :-P
sourceforge.net/project/showfiles.php?group_id=94142 там 4.0.1 есть ... так вернее.
Добавлено спустя 2 часа 51 минуту 7 секунд:
По поводу пункта 2 могу предложить два варианта возможной реализации:
1. Смотрим CLB и локальный контакт лист.
Находим в CLB первую группу пользователей. Если такая группа есть локально, удаляем содержимое, импортируем всех пользователей группы из CLB. Если такой группы нет, создаем и импортируем содержимое.
Ищем следующую группу в CLB итд ...
Данное правило не распространяется на корневую группу.
2. Я тупо создаю еще один файл со списком групп, которые нужно удалить вместе с пользователями, а потом импортировать заново ...
Данное правило не распространяется на корневую группу.
Естественно оба правила можно заоптимизировать на предмет того, что может и не надо полностью удалять всех пользователей, а потом заново импортировать, а работать только с изменениями.
BTW ... если начнет получаться - нада договориться о способах оплаты.
Добавлено спустя 9 минут 10 секунд:
Нашел кусок по п1
Явно закрывают файл только после нажатия Done
Да, я его (кусок) уже заметил. В принципе там переменные startup и i влияют. Я пока не смотрел откуда они.
Тебе просто закрывать файл ДО окошка или вообще выбросить окошко?
Вообще серьезно заниматься этим буду в выходные.
А кому счас легко...
Лучше закрыть файл до окошка.
Добавлено спустя 5 часов 51 минуту 4 секунды:
Первый вопрос снят ... я первый раз работал в С под Windows ... успешно.
Поздравляю Надо же когда-то начинать.
А кому счас легко...
Отправить комментарий