Подписка


Подписаться на Google Buzz

Друзья блога

Пульс блога

Опрос

Каких статей следует публиковать больше в блоге?

View Results

Loading ... Loading ...

Система Orphus

Блоги и сообщества

DelphiFeeds.ru - Все Delphi-блоги Рунета О раскрутке блога по программированию

Счётчики


Анализ веб сайтов

Рейтинг блогов

Собственно здесь я пишу небольшие заметки, которые никак не назвать полноценным постом, но тем не менее какая-то полезная информация (по крайней мере для меня) есть.

Lazarus + MySQL 5.x Проблемы с кодировками

Суть проблемы: в БД есть таблица в кодировке utf-8, в таблице все текстовые поля также представлены в utf-8. Запись в базу данных отправляется также в utf-8. В результате в таблицу попадают кракозябры вместо русских букв. Аналогичная ситуация при работе с кодировками cp1251 и т.д.
Решение: может и не совсем корректное, но оно работает. Перед запросом на добавление/чтение данных отправлять на сервер:

1
SET NAMES кодировка

или, если клиент и сервер работают в разных кодировках указывать:

1
2
3
SET character_set_client="кодировка1",
character_set_connection="кодировка2",
character_set_results="кодировка3";

Здесь:
character_set_client – указывает, в какой кодировке будут поступать данные от клиента;
character_set_connection – указывает, в какую кодировку следует преобразовать данные полученые от клиента перед выполнением запроса;
collation_connection – указывает, каким образом сравнивать между собой строки в запросах;
character_set_results – указывает серверу не необходимость перекодировать результаты запроса в определенную кодировку перед выдачей их клиенту

Lazarus + WebBrowser

В сети довольно много вопросов по поводу использования TwebBrowser в Lazarus для работы со ссылками. Одним из вариантов просмотра сайтов при написании программ в Lazarus – открывать html-страницы в браузере ОС. Для Windows – это Internet Explorer либо любой другой, используемый по умолчанию.
Для того, чтобы открыть страничку в браузере:
для Windows:
1. Подключить модуль ShellAPI
2. Выполнить процедуру ShellExecute
для Linux:
пока могу посоветовать использовать TProcess. Так, страницу моего блога можно открыть с помощью следующего кода:

1
2
Process1.CommandLine:=' firefox http://webdelphi.ru';
Process1.Execute;

Главная страница блога откроется в Firefox на новой вкладке.

Lazarus + MySQL

При использовании MySQLQuery следует обратить внимание на свойство PacketRecords – от него зависит сколько за раз записей вернется вам в запросе. Нарпимер, если PacketRecords=10, то при запросе в таблицу с 200 записями:

1
SELECT * FROM table

Вам вернется только 10 первых записей, даже если будет такой запрос

1
SELECT * FROM table LIMIT 0,200

затем надо будет вызвать метод UpdateCursorPos и вам вернет следующая порция записей.

Lazarus + OpenOffice

И всё-таки мир не справедлив…практически для всех популярных языком программирования разработан UNO bridge, позволяющий общаться с OpenOffice из своего приложения…А для Pascal’я нет :( Единственная разработка ведется русским сообществом Лазаруса и та годится в Linux на 50%…Походу придётся курить документацию по формату OpenDocument и составлять все отчёты с нуля

WinInet

Чтобы отлавливать коды 302 и 301 с использованием метода HttpQueryInfo необходимо в вызове HttpOpenRequest использовать флаг INTERNET_FLAG_NO_AUTO_REDIRECT, который останавливает автоматическое перенаправление.

Вот бы такие микроавтобусы вместо “Газелей” по маршрутам ездили :)
заказ микроавтобуса



Protected by Copyscape Duplicate Content Detector