четверг, 27 декабря 2012 г.

Настройка Mail.ru Агента через реестр

При настройке клиентских ПК может возникнуть нужда в массовой настройке Агента на различных машинах. Ускорить процесс поможет редактирование реестра через скрипты.
Настройки хранятся в HKCU "Software\Mail.Ru\Agent" без какой-либо классификации. Видна аккуратность разработчиков :).
Некоторые ключи, которые помогут в настройке:
set_proxyauto- брать системные настройки прокси или нет,
proxy_type - тип прокси.
Далее, там же можно настроить и адрес и порт прокси сервера и логин и пароль пользователя.

вторник, 18 декабря 2012 г.

Размещение объекта в памяти в C++

Интересная статья, найденная в блоге Алены С++, посвященная размещению классов в памяти, а так же объяснениям, как именно хранятся виртуальные функции в классах-наследниках. С картинками.

пятница, 14 декабря 2012 г.

Как узнать в Aptitude версию пакета?

Несмотря на то, что aptitude без параметров запускает ncurses оболочку, ее можно вызывать с различными параметрами для выполнения различных действий. Удобство от ее использования заключается в единообразии команд работы с пакетным менеджером.
Командой:
aptitude show [package]
можно просмотреть информацию о пакете, в том числе и установленную на машине версию данного пакета.
Пример выполнения команды:
root@FILESERVER:~# aptitude show swat
Пакет: swat
Состояние: не установлен
Версия: 2:3.5.6~dfsg-3squeeze8
Приоритет: необязательный
Раздел: net
Сопровождающий: Debian Samba Maintainers
Размер в распакованном виде: 7 111 k
Зависимости: samba (= 2:3.5.6~dfsg-3squeeze8), libc6 (>= 2.5), libcap2 (>= 2.10), libcomerr2 (>= 1.01), libcups2 (>= 1.4.0),
libgssapi-krb5-2 (>= 1.7+dfsg), libk5crypto3 (>= 1.6.dfsg.2), libkrb5-3 (>= 1.8+dfsg), libldap-2.4-2 (>=
2.4.7), libpam0g (>= 0.99.7.1), libpopt0 (>= 1.16), libtalloc2 (>= 2.0.0), libwbclient0 (>=
2:3.4.0~pre2), zlib1g (>= 1:1.1.4), openbsd-inetd | inet-superserver
Рекомендуются: samba-doc (= 2:3.5.6~dfsg-3squeeze8)
Описание: веб-инструмент управления Samba
Samba -- реализация протокола SMB/CIFS для систем Unix, обеспечивающая совместное использование принтеров и обмен файлами для
сетей с операционными системами Microsoft Windows, OS X и Unix.

Пакет позволяет управлять службами Samba через веб-браузер.

Разработка SWAT приостановлена, его настройки по умолчанию небезопасны при использовании через неконтролируемые сети. SWAT
изменяет smb.conf, переставляя местами записи и удаляя все комментарии, а также параметры include= и copy=, что не подходит при
внесении настроек вручную в файлы smb.conf или для пакетных настроек по умолчанию.
Сайт: http://www.samba.org

среда, 12 декабря 2012 г.

Просмотр кода ошибки Windows

При работе программ в Windows могут возникать ошибки. Порой кроме кода ошибки, разумной информации нет. Просмотреть описание ошибки можно стандартными средствами Windows. 
Если ошибка вывелась в шестнадцатеричном коде (0x0000), то ее предварительно надо перевести в десятеричный вид с помощью калькулятора в инженерном или программистском режиме. Затем следует выполнить в консоли команду
net helpmsg "полученное вами число"
 Результатом выполнения станет описание ошибки.
Также описание ошибок есть на MSDN

пятница, 7 декабря 2012 г.

GDI+. Начало работы

Пишу приложение, читающее BMP файл. Строчка типа

Bitmap* mybitmap = new Bitmap(L"d:\\tmp\\d.bmp",false);

не выполняется. Это происходит потому, что в большинстве примеров не указано, что подсистему GDI+ сперва нужно проинициализировать:

GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);

а в конце работы необходимо завершить ее:

GdiplusShutdown(gdiplusToken);