Функция генерации текста по шаблону
18.08.2010

Сегодня речь пойдет о функции, аналоги которой трудно найти в интернете – функция генерации текста по шаблону. Не раз я садился за её написание, не раз тревожил тематические форумы незаурядной задачей – но до сегодняшнего дня не смог найти в интернете даже упоминаний о принципах написания подобных функций.

Шаблон генерации – строка вида: “Test.ru – {лучший|превосходный|замечательный} {сайт|ресурс}!”. На выходе должны получиться следующие варианты:
Test.ru – замечательный ресурс!
Test.ru – замечательный сайт!
Test.ru – лучший ресурс!
Test.ru – лучший сайт!
Test.ru – превосходный ресурс!
Test.ru – превосходный сайт!

Читать далее

Автор: Пуховой

Постинг в Wordpress из Delphi
05.06.2010

Сегодня занялся разработкой собственного генератора дорвеев на Wordpress.

Разумеется, сразу подумал прибегнуть к помощи XML-RPC протокола, начал поиски готового примера для публикации статей. В интернете меня ждало разочарование. Большинство программистов знает, что Земля круглая, но вот о том, что кроме них на ней еще программисты существуют – большинство только догадывается. Были найдены десятки отечественных и зарубежных блог-клиентов (чем не идея для очередной программки?) – но исходных кодов найдено не было. Ну что же, мы простых путей не ищем.

Изрядно расковыряв найденные PHP скрипты для кросс-постинга, за полтора часа функция была написана и отлажена.

Читать далее

Автор: Пуховой

Подружим idhttp, idsocksinfo и idssliohandlersocketopenssl
16.01.2010

Проблема работы с ssl через socks в indy наблюдается давно. Сколько бы не лазил на форумах – никому не удавалось подружить 3 компоненты, дабы они работали более или менее корректно. Поэтому пришлось связывать самому.

Используемое:

  • Delphi 2010 update 5
  • Indy 10.5.7, последняя доступная ревизия
  • SSL библиотеки из последних, приложу в посте

Напомню, что нужно добавить в uses для использования функции:

  • idhttp
  • idcookiemanager
  • idsslopenssl
  • idcompressorzlib
  • idsocks

idcookiemanager мы добавили на всякий случай – вдруг вы захотите проверять установку кукисов (некоторые прокси не отдают оные). idcompressorzlib – для экономии трафика (не увлекаться, даже на мощных серверах способна загрузить систему на все 120%).
Читать далее

Автор: Пуховой

Virus.Win32.Induc.a
18.08.2009

Речь пойдет о вирусе Virus.Win32.Induc.a, который долгое время не детектил ни один антивирус.

Я всегда считал свой ПК максимально стойким к заражению всякой дрянью. Тому способствовало несколько факторов:

  • самое свежее ПО для работы
  • антивирусное ПО с детектом расширенных обновлений баз каждый час
  • аналог PortExplorer, для контроля соединений и обрыва любого в случае чего

И вот настал тот миг, когда мой ПК был заражен старым, по моему мнению, вирусом, опасным для пользователей DELPHI 4.0-7.0. Немного информации о вирусе.

В интернете появился специфичный для Delphi вирус. Суть его в том, что заражённая программа ищет на диске установленные версии Delphi и, если находит, изменяет файл SysConst.dcu (старая версия сохраняется под именем SysConst.bak), и после этого все программы на Delphi, скомпилированные на этом компьютере, начинают точно так же заражать Delphi на тех компьютерах, где они запускаются. Распространению вируса способствовало то, что некоторые версии популярного мессенджера QIP оказались заражены им (команда разработчиков QIP приносит за это свои извинения). Пока единственный обнаруженный вредный эффект от вируса — это то, что из-за ошибки в его коде при запуске заражённой программы возникает Runtime error 3, если ключ реестра HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Delphi\x.0 (x — от 4 до 7) содержит неправильное значение параметра RootDir (для правильного значения ошибки не происходит). Видимо, просто обкатывалась технология распространения вируса.

Проверьте свои версии Delphi и, если найдёте у себя SysConst.bak, выполните следующие действия:
1. Удалите SysConst.dcu
2. Скопируйте SysConst.bak в SysConst.dcu. Важно именно скопировать, а не переименовать, чтобы SysConst.bak тоже остался на диске — это убережёт систему от повторного заражения.

Автор: Пуховой