Архив за месяц: Июль 2010

Вспоминаем Си. Подключаем библиотеки CURL, Zlib, PCRE, OpenSSL и SQLite

Задался целью статично собрать все части в один исполняемый файл.. Зачем? .. Сам не знаю, может для того, чтобы не таскать с собой дополнительные .dll-файлы. Конечно это отрицательно сказывается на своевременном апдейте приложения, с каждой новой версией любой из частей … Читать далее

Рубрика: Программирование | Метки: , , , , , , | Оставить комментарий

+++ Nuclear Launch Detected +++

Уже 17 часов (а может и больше, смотря по какому времени считать) идет продажа ключей и коробок одной из самый культовых игр в истории Starcraft II. Blizzard как всегда рулИт. Сколько игр они не выпускали, каждая из них была хитом … Читать далее

Рубрика: Новости | Метки: | Оставить комментарий

Вспоминаем Си. бНОПНЯ

После небольшого дауна, продолжаем вспоминать :) Порой необходимо вывести что-то в консоль, или просто пишешь тестовую консольную версию для отладки какой-либо функции. Многие, я в это верю :) , встречались с абракадаброй на экране, пытались перекодировать выводимое сообщение, писали «собственные» … Читать далее

Рубрика: Программирование | Метки: , | Оставить комментарий

Креатив в глубинке

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

Рубрика: Оффлайн | Оставить комментарий

Вспоминаем Си. Превращаем элемент управления в hyper-link

Оказалось нужным открытие браузера с нужным адресом при нажатии на тексте. Все довольно простенько. Файл ресурсов: #include <windows.h> #define IDD_DIALOG1 1000 #define IDC_LINK_GOOGLE 1100 LANGUAGE LANG_NEUTRAL, SUBLANG_DEFAULT IDD_DIALOG1 DIALOGEX 0, 0, 186, 27 STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | … Читать далее

Рубрика: Программирование | Метки: , | Оставить комментарий

Вспоминаем Си. Чтение и запись файла

Смешно, сам от себя такого не ожидал. #include <windows.h> #include <stdio.h> #define CHUNK 1024 int copy(FILE *src, FILE *dst) { int bytes; unsigned char buf[CHUNK]; do { // копируем весь файл кусками по 1 Кбайт bytes = fread(buf, 1, CHUNK, … Читать далее

Рубрика: Новости | Метки: | Оставить комментарий

Вспоминаем Си. Отключаем (не)удобства assert

Есть такая удобная штука assert называется. Данный макрос вызывает исключение, которое позволяет провести частичную диагностику результатов работы программы. Макрос проверяет истинность выражения, и если оно ложно пишет в поток stderr само выражение, имя файла и строку исходника, в котором это … Читать далее

Рубрика: Программирование | Метки: , , | Оставить комментарий

Почему ARM?

На самом деле этот пост должен был быть перед постом про «Наибольший общий делитель«. Так вот, почему меня заинтересовал именно ARM? Несколько месяцев назад купил я на eBay супер-убийцу iPhone :) … SciPhone I9+++. Выглядит оно как iPhone, корпус пластиковый, … Читать далее

Рубрика: Новости | Метки: , , , | Оставить комментарий

Вспоминаем Си. Ассоциативные массивы

Нужны ассоциативные массивы. Как об-Веб-ившемуся разработчику, уже привыкшему к ним, они просто необходимы. Ничего выдумывать не стал, а использовал уже написанный и отлаженный шаблон map из библиотеки C++ STL. #include <windows.h> // magic include :) #include <stdio.h> // printf #include … Читать далее

Рубрика: Программирование | Метки: , | Оставить комментарий

Вспоминаем Си. Изменение ID элемента управления

В моем диалоговом окне несколько стадий, ограничим их пока двумя гипотетическими пунктами, которые исполняются при нажатии одной и той же кнопки на разных этапах обработки: выбор и подтверждение действия исполнение действия Казалось бы, можно просто использовать некие костыли, в виде … Читать далее

Рубрика: Программирование | Метки: , | Оставить комментарий

Вспоминаем Си. RichEdit, прокрутка текста колесиком мыши

Понадобилась прокрутка текста внутри RichEdit элемента, даже в том случае, если оно не в фокусе. Долго думать не пришлось, все довольно тривиально: LRESULT CALLBACK mainDlgProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { switch (msg) { .. .. case WM_MOUSEWHEEL: … Читать далее

Рубрика: Программирование | Метки: , , | Оставить комментарий

Вспоминаем Си. Richedit, Выравнивание текста

Задался вопросом как мне красиво выровнять текст по обоим границам, так сказать «сделать ему Justify» ? Начиная с версии RichEdit 2.0, элемент управления может выравнивать текст от левого до правого края, и сделать это можно таким образом: // hwnd — … Читать далее

Рубрика: Программирование | Метки: , , | Оставить комментарий