Delphi programming blog
Источник: http://teran.karelia.pro/articles/item_4493.html
 

Планы по Outlook Social Provider для ВКонтакта.

Опубликовано 17.10.2011 г. 00:21

Поскольку периодически появляются отзывы от пользователей плагина для интеграции Outlook и соц. сети ВКонтакте, то думаю, что в ближайшее время поработаю с ним.

Во-первых, что к программированию совсем не относится, думаю что лучше бы создать группу в самой соц. сети. Наверное так будет гораздо проще собирать отзывы от пользователей (коих наверное не так уж много, но все же), отвечать на вопросы, и устранять ошибки, да и информировать об обновлениях Второе - создать нормальный инсталлятор для плагина. Тут было бы еще не плохо решить вопрос с тем, чтобы библиотеки SSL класть в одну папку с самой dll. В том виде который есть сейчас эти библиотеки копируются в system32. Лучше же на мой взгляд иметь их отдельные, на всяк случай. Проблема была в том, что при загрузке dll порядок поиска файлов строго определен. Начиная системной директорией, и заканчивая директорией, где расположено приложение. В нашем случае проблема в том, что именно директория приложения, а не нашей dll, т.е папки с самим аутлком. Видимо тут понадобится посмотреть на исходный код INDY. Вообще меня радует, что скомпилировав плагин в Delphi XE2 все штатно работает, переход с D2010 прошел без проблем. Кстати о переходе с D2010. Поначалу думал, что при импорте старых проектов будут изменены uses, и проекты потеряют обратную совместимость. Но на практике такой проблемы нет, используются алиасы для модулей. Вообще судя по справке есть какой то мастер импорта, но таки ни разу его не увидел, открывая старые проекты. Третье - создать 64-битный вариант плагина (выложить в свободный доступ). XE2 позволяет нам это легко делать, так что тут проблемы нет. В прочем, 64битную платформу я в проект уже добавил, все прекрасно компилируется, и даже успешно работает. Код проекта изменений не требовал, разве что в одном месте, где применялась арифметика указателей потребовалось изменить integer(address) на NativeInt(). Создать вариант инсталлятора для х64, либо реализовать это в одном. хотя лучше два разных, чтобы качать меньше. При добавлении платформы х64 в обычный проект понадобится изменить Output Directory, как для exe так и для dcu. Для этого следует открыть свойства проекта, выбрать в выпадающем меню All Configurations, выбрать пункт Delphi Compiler и настроить Output Directory & Unit output Directory в значение
.\$(Platform)\$(Config)
Тогда исполняемые файлы и dcu будет помещаться в директории Win32\Release или, например, Win64\Debug.
 
Также удобно настроить post-build events. Мне было бы удобно, чтобы при компиляции dll копировалась бы то место, где она установлена. Но только для компиляции под win32, поскольку вариант х64 мне не нужен. Несмотря на то, что существует отдельный инструмент Build Tools, использовать мы его не будем (он, кажется, не позволяет выбрать платформу и конфигурацию), а в том же окне свойств проекта, выбрав "All configurations 32 bit windows", и Build Events слева в дереве, указать в секции Post-Build Events свойство Commands в значение нужной команды, в моем случае копирование.
copy $(OUTPUTPATH) C:\program files\.......\$(OUTPUTFILENAME) /y
Шаг четвертый, поскольку Social Connector не предоставляет никаких инструментов для настройки провайдера, то лучше попробовать сделать отдельную утилиту настройки. Настраивать можно, например, какие именно события мы хотим видеть в ленте и т.п. Но перед этим лучше сделать такую штуку: поскольку вконтакт не выдает е-маилов пользователей, то приходится вручную связывать существующие контакты и новые из соц. сети. Если отключить провайдер, то все загруженные контакты удаляются, и в следующий раз придется все повторять. И тут хорошим вариантом будет хранить сопоставления ID пользователей вконтакта, и реальных адресов пользователей. Тогда при новом подключении к сети провайдер будет использовать реальный адрес, а не генерировать фиктивный. Пункт 5 будет заключаться в небольшом переписывании кода, я уже давно начал переделывать парсер новостей, но так еще его и не тестировал. Здесь же можно будет добавить функционал для привязки к полу пользователя, чтобы сообщения были либо "Вася добавил 5 фотографий", "Маша добавила 2 фотографии". Вообще сегодня, после прочтенного комментария в блоге понял, что не правильно связывал контакты исходные и новые загруженные. Раньше я к исходному контакту добавлял дополнительным адресом фиктивный email а-ля xxx@vk.com. И вдруг тут понял, что надо делать наоборот - найти новый загруженный контакт в списке, и добавить к нему реальный адрес.
Метки:  vkontakte API  |  outlook 

Комментарии

Александр
19.10.2011 в 13:35
Очень важная штука. Спасибо за продолжение развития проекта. Ждем.
ter
02.11.2011 в 17:53
тем временем инсталляторы для 32/64 версий уже вложены, и в том числе первая версия утилиты для настройки
Romker
06.01.2013 в 00:33
Спасибо за Ваш труд.
Подскажите пож-та, есть ли возможность выложить плагин для скачки и будет ли работать версия на Outlook 2013?
Спасибо.
teran
09.01.2013 в 12:00
новости у меня для вас плохие :) разработку плагина я забросил давным давно
Alex
12.10.2013 в 16:15
Печально, нигде не могу найти социального провайдера для этой сети ;(
Romker
16.12.2013 в 21:28
Аналогично. Хороший был плагин.
Но надежда умирает последней. Вдруг еще дойдут руки у человека ...
Do you have a spam issue on this website; I also am a blogger,
and I was wondering your situation; many of us have created some nice procedures and we are looking to exchange strategies with other folks,
please shoot me an email if interested.
- Имя
- e-mail*
- Сайт
вы можете использовать теги [i],[b],[code],[quote]
Дополнительно