<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-635055402820746559</id><updated>2025-03-02T16:41:10.293-08:00</updated><category term="C++"/><category term="Ubuntu"/><category term="Linux"/><category term="Windows"/><category term="интересно"/><category term="пригодится"/><category term="Mozilla Firefox"/><category term="программулины"/><category term="электроника"/><category term="яндекс"/><category term="pascal"/><category term="процессы"/><category term=".htaccess"/><category term="google"/><category term="php"/><category term="skype"/><category term="ОС"/><category term="полезности"/><category term="C"/><category term="CURL"/><category term="Disqus"/><category term="Dr.Web"/><category term="IE"/><category term="IT"/><category term="Internet Explorer"/><category term="burg"/><category term="find"/><category term="glut"/><category term="grub"/><category term="javascript"/><category term="microsoft"/><category term="nmap"/><category term="online"/><category term="pdf"/><category term="string"/><category term="yandex"/><category term="Новости"/><category term="Токио"/><category term="Япония"/><category term="билиотека CURL"/><category term="блог"/><category term="блоггинг"/><category term="жалко"/><category term="запомнить"/><category term="защита"/><category term="исходник"/><category term="круто"/><category term="не нравиться"/><category term="новые технологии"/><category term="нравиться"/><category term="обновление"/><category term="придумали"/><category term="просто наткнулся"/><category term="скачать"/><category term="смешно"/><category term="смешное"/><category term="телефон"/><category term="улыбнуло"/><category term="функция"/><title type='text'>Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>56</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-7773460103589494534</id><published>2013-05-17T23:24:00.001-07:00</published><updated>2013-05-18T01:18:51.237-07:00</updated><title type='text'>[Ubuntu] Удаление шумов из видео которое было записано c помощью recordmydesktop </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Замечание&lt;span style=&quot;font-size: small;&quot;&gt;: &lt;/span&gt;Нижеописанный способ подходит &lt;span style=&quot;font-size: small;&quot;&gt;и для других видеофайлов&lt;span style=&quot;font-size: small;&quot;&gt;,&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt;записанны&lt;span style=&quot;font-size: small;&quot;&gt;х&lt;/span&gt; не с помощью recordmydesktop&lt;span style=&quot;font-size: small;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Что нам понадобится?&lt;/span&gt;&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;mplayer&lt;/b&gt;&amp;nbsp; - понадобится нам для извлечения звуковой дорожки (в формате wav) из видео&lt;br /&gt;
&lt;b&gt;mencoder&lt;/b&gt; - часть mplayer&#39;a, она нам поможет сконвертировать ogv в avi, если не поможет то воспользуемся ffmpeg&#39;ом&lt;br /&gt;
&lt;b&gt;ffmpeg&lt;/b&gt;&amp;nbsp;&amp;nbsp; - эта утилита умеет много чего, но мы воспользуемся ею для конвертирования: ogv в avi&lt;br /&gt;
&lt;b&gt;avidemux&lt;/b&gt; - программа которая умеет извлекать звуковую дорожку из видео, склеевать звук с видео и пр.&lt;br /&gt;
&lt;b&gt;audacity&lt;/b&gt; - программа которая поможет нам убрать шумы из аудиофайла&lt;br /&gt;
&lt;b&gt;libavcodec-extra-53&lt;/b&gt; - набор кодеков, для работы с аудио и видео&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Устанавливаем все утилиты как обычно через: sudo apt-get install avidemux audacity libavcodec-extra-53 ffmpeg mplayer mencoder&lt;br /&gt;
Обычно mplayer уже установлен в системе, и еще кстати необязательно указывать mencoder в списке загружаемых пакетов, т.к. он тянется с репозиториев вместе с mplayer&#39;ом.&lt;br /&gt;
Установили всё нужное что дальше?&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Конвертируем ogv в avi&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Нам нужно сконвертировать наш ogv файл (полученный при захвате экрана с помощью recordmydesktop) в avi т.к. avidemux не умеет работать с ogv форматом(что нам и понадобится в самом конце).&lt;br /&gt;
Погуглив я нашел два решения:&lt;br /&gt;
Первое: mencoder -idx out.ogv -ovc lavc -oac mp3lame -o out.avi&lt;br /&gt;
Читатель, возможно этот способ у тебя сработает, но у меня он сработал некорректно (некорректно сконвертировалось видео), поэтому я воспользовался вторым способом.&lt;br /&gt;
Второе: ffmpeg -i out.ogv -vcodec mpeg4 -sameq -acodec libmp3lame out.avi&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Извлекаем звуковую дорожку из видео&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
mplayer -vc null -vo null -ao pcm:fast:file=track.wav out.avi &lt;br /&gt;
Также можно извлечь звуковую дорожку с помощью avidemux, только мне кажется avidemux может извлечь звуковую дорожку только в mp3&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Удаляем шумы c помощью audacity&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Открываем наш wav файл в audacity&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDB87cBgtOEj64-nuzBa_oSR80Ckkql2qmCfgUuH2cYJUOSDgTf-aC2i7QW1CvkcjQ9a2VXUliaby40AAIQQhzWdt-XNxGsYYS5JN3EKh3OMs97ib1mytSWvQ9JdJjB4AtOMzi42tmJ7AX/s1600/audocity0.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;236&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDB87cBgtOEj64-nuzBa_oSR80Ckkql2qmCfgUuH2cYJUOSDgTf-aC2i7QW1CvkcjQ9a2VXUliaby40AAIQQhzWdt-XNxGsYYS5JN3EKh3OMs97ib1mytSWvQ9JdJjB4AtOMzi42tmJ7AX/s320/audocity0.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
Видим шумы на графике, они имеют небольшую длину волны, от них то нам и надо избавится.&lt;br /&gt;
Далее идем в Меню -&amp;gt; Эффекты -&amp;gt; Удаление шума, после чего нужно будет поиграться с параметрами(если хотите достичь желаемого результата), но мне хватило уменьшить значение шкалы &quot;Чувствительность&quot;. Кстати поиграться с другими эффектами тоже стоит т.к. это как минимум весело :)&lt;br /&gt;
После удаления шума график звуковой дорожки у меня выглядел так:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_qoVDCxH8nr3ugrG-PB0jCwSZwD8A-MDanw9C5sgNw3uz8CMWrM2sNiNcbyjbla6TdGAS24hF3Cij5TsLNltSeFPBm-MXjor5RsVHDrbSbASFpB7iDC5uoigr1X9mUyaA5icg5MdIONrk/s1600/audocity.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;237&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_qoVDCxH8nr3ugrG-PB0jCwSZwD8A-MDanw9C5sgNw3uz8CMWrM2sNiNcbyjbla6TdGAS24hF3Cij5TsLNltSeFPBm-MXjor5RsVHDrbSbASFpB7iDC5uoigr1X9mUyaA5icg5MdIONrk/s320/audocity.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Далее экспортируем полученную звуковую дорожку в файла формата wav&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Склеиваем нашу звуковую дорожку(без шумов) с видео с помощью avidemux&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Заходим в Меню -&amp;gt; Звук -&amp;gt; Главная дорожка и указываем наш wav файл для склеивания.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7dx4Y-lU5vJ3fnQmFUcrhtROd41GhIL_F8ZwHwenHtWQKGj5gzDU2RIUvypDJP-aJl2CGqUsTsLgHQw2ZpqlB04_0OS6vBJV4CMwOrZ1h9pFu-xl6IPc3IPEJdr84F78AMtDv4dXqnWi7/s1600/avidmux.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;119&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7dx4Y-lU5vJ3fnQmFUcrhtROd41GhIL_F8ZwHwenHtWQKGj5gzDU2RIUvypDJP-aJl2CGqUsTsLgHQw2ZpqlB04_0OS6vBJV4CMwOrZ1h9pFu-xl6IPc3IPEJdr84F78AMtDv4dXqnWi7/s320/avidmux.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
В общем то всё, осталось только сохранить полученное видео. &lt;br /&gt;
К концу написания статьи меня осенило, можно было работать не только с дорожками в wav формате но и с mp3. Это уже на ваш выбор, какой формат лучше использовать.&lt;/div&gt;
&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7773460103589494534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7773460103589494534'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2013/05/ubuntu-c-recordmydesktop.html' title='[Ubuntu] Удаление шумов из видео которое было записано c помощью recordmydesktop '/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDB87cBgtOEj64-nuzBa_oSR80Ckkql2qmCfgUuH2cYJUOSDgTf-aC2i7QW1CvkcjQ9a2VXUliaby40AAIQQhzWdt-XNxGsYYS5JN3EKh3OMs97ib1mytSWvQ9JdJjB4AtOMzi42tmJ7AX/s72-c/audocity0.png" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-5818475947208993189</id><published>2013-02-07T11:13:00.000-08:00</published><updated>2013-02-07T11:14:25.255-08:00</updated><title type='text'>Привязываем Яндекс.Диск к nautilus&#39;у</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Вчера случайно наткнулся на информацию о том что яндекс-диск можно привязать к файловому менеджеру nautilus&#39;у. Ниже показано как.&lt;br /&gt;
Всё подробно описывать не буду, только запостю пару скриншотов для ясности.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi025shzx0OwdkzK0npOBsAiMS6bGTbkN6Iy2TdRj0KG2c0FjCSawH8Equ91aYD0v_USVN-GfhZwuYO2DR-RQjvNk4FtJB9JkrvhMI_di9pwefVBGc5PmFuUKMczqSoIZpZ-8Oo5P2CE5vS/s1600/nautilus.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;164&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi025shzx0OwdkzK0npOBsAiMS6bGTbkN6Iy2TdRj0KG2c0FjCSawH8Equ91aYD0v_USVN-GfhZwuYO2DR-RQjvNk4FtJB9JkrvhMI_di9pwefVBGc5PmFuUKMczqSoIZpZ-8Oo5P2CE5vS/s320/nautilus.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg57tw1Gn8mHLYwyaT7CLNh-aqnFw1fYXDWGSd7EewyTc2jeQCyQ4Q07yEozP-_1aaBaM08Ruh0UtQe4gYg-W36wUd0X9wQ94-OmmsBg-r8MDfX0MtMNhlU9A6jmklCa5aehj7LXIpuMCDT/s1600/auth.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;199&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg57tw1Gn8mHLYwyaT7CLNh-aqnFw1fYXDWGSd7EewyTc2jeQCyQ4Q07yEozP-_1aaBaM08Ruh0UtQe4gYg-W36wUd0X9wQ94-OmmsBg-r8MDfX0MtMNhlU9A6jmklCa5aehj7LXIpuMCDT/s320/auth.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2PH02psLQAZVuUC8qd2mXxwjK2-C_M1l_VLDRDT7p0UNZTnHdl3nm3f2KcxgpkHQFzydzJPoRap5g6ddFKOwnW5GyIHcr2MnZJV3v1DAn872bdYOY_6eLfunve_azRe5Eab8K3rSb02U_/s1600/nautilus1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2PH02psLQAZVuUC8qd2mXxwjK2-C_M1l_VLDRDT7p0UNZTnHdl3nm3f2KcxgpkHQFzydzJPoRap5g6ddFKOwnW5GyIHcr2MnZJV3v1DAn872bdYOY_6eLfunve_azRe5Eab8K3rSb02U_/s320/nautilus1.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Итог: Очень удобно, только я бы еще конфиденциальные данные перед заливкой криптанул truecrypt&#39;ом(мало ли).&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/5818475947208993189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/5818475947208993189'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2013/02/nautilus.html' title='Привязываем Яндекс.Диск к nautilus&#39;у'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi025shzx0OwdkzK0npOBsAiMS6bGTbkN6Iy2TdRj0KG2c0FjCSawH8Equ91aYD0v_USVN-GfhZwuYO2DR-RQjvNk4FtJB9JkrvhMI_di9pwefVBGc5PmFuUKMczqSoIZpZ-8Oo5P2CE5vS/s72-c/nautilus.jpg" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-7113793792785970639</id><published>2013-02-06T12:39:00.001-08:00</published><updated>2013-02-06T12:41:11.610-08:00</updated><title type='text'>Ubuntu 12.04 не заходит через администратора</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Проблема была такая: не мог зайти через администратора в систему, при вводе правильного пароля и клацания &quot;enter&quot;, система бросала обратно к выбору пользователя.&lt;br /&gt;
Проблему решил удалением файла &lt;b&gt;&lt;i&gt;.Xauthority &lt;/i&gt;&lt;/b&gt;в домашней папке пользователя.&lt;br /&gt;
sudo rm /home/username/.Xauthority &lt;br /&gt;
+&lt;br /&gt;
еще не помешает удалить .X0-lock&lt;br /&gt;
sudo rm /tmp/.X0-lock&lt;br /&gt;
После этих команд стоит перезагрузится, надеюсь кому нибудь пригодится :)&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7113793792785970639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7113793792785970639'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2013/02/ubuntu-1204.html' title='Ubuntu 12.04 не заходит через администратора'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-2690725685839078254</id><published>2012-07-29T06:16:00.001-07:00</published><updated>2012-07-29T06:18:53.937-07:00</updated><title type='text'>Синхронный вывод звука на (наушники и колонки) в ubuntu 12.04</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Недавно поставил себе ubuntu 12.04, в ней, мне не понравилось то что вывод звука на колонки прекращается при подключении наушников. Т.к. наушники у меня обычно всегда подключены, и если нужно что то послушать через колонки я обычно просто убавлял звук в наушниках до минимума и включал колонки.&amp;nbsp; И так я решил сделать синхронную подачу звука в наушники и колонки в ubuntu 12.04(по умолчанию не синхронно), погуглил и нашел решение, решение оказалось очень простым, оно такого:&lt;br /&gt;
Запускаем &lt;b&gt;alsamixer&lt;/b&gt;, идем в раздел &lt;b&gt;Auto-Mute&lt;/b&gt; и ставим режим &quot;&lt;b&gt;disabled&lt;/b&gt;&quot;(стрелки &quot;вверх&quot;, &quot;вниз&quot;).&lt;br /&gt;
Для ясности вот скрин:&lt;br /&gt;
------------------------------------------------------------------------------------------------ &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYotCYS_f5JR_uIdUnpOxD5Phn2nd0jb6Y16eHIpD9EyNqMc_4Q210YRswPP1bCsGgnXtFxFVQPND6ehA0L3RvmzxXnGoKDdG4UVITSbCxaUrzAmY7ZWENXo-iDRZ2GosURZ49JxY5ItaK/s1600/alsamixer.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;205&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYotCYS_f5JR_uIdUnpOxD5Phn2nd0jb6Y16eHIpD9EyNqMc_4Q210YRswPP1bCsGgnXtFxFVQPND6ehA0L3RvmzxXnGoKDdG4UVITSbCxaUrzAmY7ZWENXo-iDRZ2GosURZ49JxY5ItaK/s320/alsamixer.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9FyBmz0UQpkDc7sH-FGAP23kr1sMlUZ3jVcfjNokIpPOSB5DHNOvz9_J-GOpFr0fWV3wl-gYesRzGn7Q9a3VfeAGJIB-UrytfvJrTusMFrjjwmzVGwOgRXyWW6SCN35mk6ss0RWTQ8i7w/s1600/alsamixer.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;
-------------------------------------------------------------------------------------------------&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2690725685839078254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2690725685839078254'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2012/07/ubuntu-1204.html' title='Синхронный вывод звука на (наушники и колонки) в ubuntu 12.04'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYotCYS_f5JR_uIdUnpOxD5Phn2nd0jb6Y16eHIpD9EyNqMc_4Q210YRswPP1bCsGgnXtFxFVQPND6ehA0L3RvmzxXnGoKDdG4UVITSbCxaUrzAmY7ZWENXo-iDRZ2GosURZ49JxY5ItaK/s72-c/alsamixer.jpg" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-2222938344299865765</id><published>2012-07-02T07:29:00.001-07:00</published><updated>2012-07-02T07:31:09.597-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C"/><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><title type='text'>Установка gtk на ubuntu</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Качаем архив с нужной нам версией =&amp;gt; &lt;a href=&quot;http://www.gtk.org/download/linux.php&quot; target=&quot;_blank&quot;&gt;[gtk.org/download]&lt;/a&gt;&lt;br /&gt;
Распаковываем скаченный архив: &lt;b&gt;tar -xzvf gtk+-2.20.1.tar.gz&lt;/b&gt;(я скачивал вторую версию, вы можете поставить 3)&lt;br /&gt;
Переходим в распакованную папку: &lt;b&gt;cd gtk+-2.20.1&lt;/b&gt;&lt;br /&gt;
Настраиваем(проверяем) исходиники под нашу систему:&amp;nbsp;&lt;b&gt; ./configure &lt;/b&gt;&lt;br /&gt;
Если выдаст что каких то пакетов не хватает, то ставим пакет libgtk2.0-dev: &lt;b&gt;sudo apt-get install libgtk2.0-dev&lt;/b&gt;&lt;br /&gt;
Пробуем опять &lt;b&gt;./configure&lt;/b&gt;,&lt;b&gt; &lt;/b&gt;если опять ругается что не найдены нужные пакеты то ставим вручную...&lt;br /&gt;
Например нам выдало: &lt;i&gt;No package &#39;glib-2.0&#39; found
No package &#39;atk&#39; found
No package &#39;pango&#39; found
No package &#39;cairo&#39; found
No package &#39;cairo-gobject&#39; found
No package &#39;gdk-pixbuf-2.0&#39; found&lt;/i&gt;&lt;br /&gt;
Например нам нужен &lt;i&gt;glib-2.0&lt;/i&gt; тогда командуем: &lt;b&gt;sudo apt-get install libglib2.0-dev&lt;/b&gt;(девелоперский пакет, то есть пакет разработчика), если надо будет то пакет &lt;i&gt;dev&lt;/i&gt; потянет за собой и другие нужные пакеты.&lt;br /&gt;
Дальше когда ./configure больше не ругается, командуем: &lt;b&gt;make&lt;/b&gt; после выполнения make, командуем: &lt;b&gt;sudo make install&lt;/b&gt;&lt;br /&gt;
Также ./configure может выдать следующие: &lt;i&gt;configure: error: &lt;br /&gt;*** Checks for TIFF loader failed. You can build without it by passing&lt;br /&gt;*** --without-libtiff to configure but some programs using GTK+ may&lt;br /&gt;*** not work properly&lt;/i&gt;&lt;br /&gt;
Тогда нужно запустить configure c параметром: &lt;b&gt;./configure --without-libtiff&lt;/b&gt;&lt;br /&gt;
Пробуем скомпилить, небольшой пример:&lt;br /&gt;
=================================== &lt;br /&gt;
#include &amp;lt;gtk/gtk.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
hello (void)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp; g_print (&quot;Hello World\n&quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
destroy (void)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp; gtk_main_quit ();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
main (int argc, char *argv[])&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp; GtkWidget *window;&lt;br /&gt;
&amp;nbsp; GtkWidget *button;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; gtk_init (&amp;amp;argc, &amp;amp;argv);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; window = gtk_window_new (GTK_WINDOW_TOPLEVEL);&lt;br /&gt;
&amp;nbsp; gtk_signal_connect (GTK_OBJECT (window), &quot;destroy&quot;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GTK_SIGNAL_FUNC (destroy), NULL);&lt;br /&gt;
&amp;nbsp; gtk_container_border_width (GTK_CONTAINER (window), 50);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; button = gtk_button_new_with_label (&quot;Hello World&quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; gtk_signal_connect (GTK_OBJECT (button), &quot;clicked&quot;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GTK_SIGNAL_FUNC (hello), NULL);&lt;br /&gt;
&amp;nbsp; gtk_signal_connect_object (GTK_OBJECT (button), &quot;clicked&quot;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GTK_SIGNAL_FUNC (gtk_widget_destroy),&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GTK_OBJECT (window));&lt;br /&gt;
&amp;nbsp; gtk_container_add (GTK_CONTAINER (window), button);&lt;br /&gt;
&amp;nbsp; gtk_widget_show (button);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; gtk_widget_show (window);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; gtk_main ();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; return 0;&lt;br /&gt;
}&lt;br /&gt;
===================================&lt;br /&gt;
Компилируем так: &lt;b&gt;gcc -o gtk_program `pkg-config --cflags --libs gtk+-2.0` gtk.c&amp;nbsp; &lt;/b&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2222938344299865765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2222938344299865765'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2012/07/gtk-ubuntu.html' title='Установка gtk на ubuntu'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-1474545479172431977</id><published>2012-06-27T19:34:00.000-07:00</published><updated>2012-06-28T07:59:55.244-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Mozilla Firefox"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><title type='text'>Firefox(Работа с закладками и журналом невозможна)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Недавно мой FireFox начал выплевывать такое сообщение: &quot;Работа с закладками и журналом невозможна, так как один из файлов Firefox используется другим приложением.&quot; Собственно журнал и закладки не работали, + еще отказывались закрываться некоторые вкладки, приходилось перезапускать браузер чтобы закрыть ненужные вкладки, долго я не стал терпеть, погуглил и нашел решение [&lt;a href=&quot;http://support.mozilla.org/ru/kb/%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%20%D1%81%20%D0%B7%D0%B0%D0%BA%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0%D0%BC%D0%B8%20%D0%B8%20%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%BE%D0%BC%20%D0%BD%D0%B5%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%B0&quot; target=&quot;_blank&quot;&gt;http://support.mozilla.org/ru/&lt;/a&gt;] Чтобы исправить это дело, нужно зайти в папку своего профиля[.mozilla/firefox/profile(у всех разный)] и посмотреть кто владелец файлов в этой папке? У меня на некоторых файлах было выставлено, что владелец файла - &#39;root&#39;. Вот у этих файлов нужно выставить, владельцем [стандартного пользователя] и поставить права доступа &#39;read and write&#39;. После чего еще нужно удалить файл &lt;span class=&quot;filepath&quot;&gt;places.sqlite в этой же папке&lt;/span&gt;. После этих не хитрых махинаций, всё встало на свои места.&lt;br /&gt;
&lt;span id=&quot;goog_925567119&quot;&gt;&lt;/span&gt;&lt;a href=&quot;http://www.blogger.com/&quot;&gt;&lt;/a&gt;&lt;span id=&quot;goog_925567120&quot;&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1474545479172431977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1474545479172431977'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2012/06/firefox.html' title='Firefox(Работа с закладками и журналом невозможна)'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-7100337724006288595</id><published>2012-03-17T11:39:00.000-07:00</published><updated>2012-03-17T11:39:55.707-07:00</updated><title type='text'>[C++ glut] функция загрузки текстуры(bmp-файла) и вывод изображения на окно. (кроссплатформенно)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;#include &amp;lt;GL/freeglut.h&amp;gt; &lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt; &lt;br /&gt;
#include &amp;lt;malloc.h&amp;gt; &lt;br /&gt;
&lt;br /&gt;
GLuint&amp;nbsp; textura_id;&lt;br /&gt;
struct textura_struct &lt;br /&gt;
{ &lt;br /&gt;
int W; &lt;br /&gt;
int H; &lt;br /&gt;
unsigned char *Image; &lt;br /&gt;
}get_textura; &lt;br /&gt;
&lt;br /&gt;
int LoadTexture( char *FileName) &lt;br /&gt;
{ &lt;br /&gt;
&amp;nbsp; FILE *F; &lt;br /&gt;
&amp;nbsp; /* Открываем файл */ &lt;br /&gt;
&amp;nbsp; if ((F = fopen(FileName, &quot;rb&quot;)) == NULL) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0; &lt;br /&gt;
&amp;nbsp; /*Перемещаемся в bmp-файле на нужную позицию, и считываем ширину и длинну */ &lt;br /&gt;
&amp;nbsp; fseek(F, 18, SEEK_SET); &lt;br /&gt;
&amp;nbsp; fread(&amp;amp;(get_textura.W), 2, 1, F); &lt;br /&gt;
&amp;nbsp; fseek(F, 2, SEEK_CUR); &lt;br /&gt;
&amp;nbsp; fread(&amp;amp;(get_textura.H), 2, 1, F); &lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp; printf(&quot;%d x %d\n&quot;, get_textura.W, get_textura.H); &lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp; /* Выделяем память под изображение. Если память не выделилась, закрываем файл и выходим с ошибкой */ &lt;br /&gt;
&amp;nbsp; if ((get_textura.Image = (unsigned char *) malloc(sizeof(unsigned char)*3*get_textura.W * get_textura.H)) == NULL) &lt;br /&gt;
&amp;nbsp; { &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; fclose(F); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0; &lt;br /&gt;
&amp;nbsp; } &lt;br /&gt;
&amp;nbsp; /* Считываем изображение в память по 3 бита, то бишь RGB для каждого пикселя */ &lt;br /&gt;
&amp;nbsp; fseek(F, 30, SEEK_CUR); &lt;br /&gt;
&amp;nbsp; fread(get_textura.Image, 3, get_textura.W * get_textura.H, F);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; glGenTextures(1, &amp;amp;textura_id); &lt;br /&gt;
&amp;nbsp; glBindTexture(GL_TEXTURE_2D, textura_id); &lt;br /&gt;
&amp;nbsp; glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); &lt;br /&gt;
&amp;nbsp; glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);&amp;nbsp; &lt;br /&gt;
&amp;nbsp; gluBuild2DMipmaps(GL_TEXTURE_2D, 3, get_textura.W, get_textura.H, GL_RGB, GL_UNSIGNED_BYTE, get_textura.Image); &lt;br /&gt;
&amp;nbsp; free(get_textura.Image); &lt;br /&gt;
&amp;nbsp; fclose(F); &lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp; return 1;&amp;nbsp; &lt;br /&gt;
} &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void display() &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Вывод изображения в окне */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glEnable(GL_TEXTURE_2D);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glBindTexture(GL_TEXTURE_2D, textura_id); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glBegin(GL_QUADS); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glTexCoord2d(0,0); glVertex2d(-35,-35 ); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glTexCoord2d(0,1); glVertex2d(-35, 35 ); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glTexCoord2d(1,1); glVertex2d( 35, 35 ); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glTexCoord2d(1,0); glVertex2d( 35,-35 ); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glEnd();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glDisable(GL_TEXTURE_2D); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; glutSwapBuffers(); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
int main(int argc, char **argv) &lt;br /&gt;
{ &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutInit(&amp;amp;argc, argv); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB ); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutInitWindowSize(400,400); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutInitWindowPosition(200, 200); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutCreateWindow(&quot;Textura&quot;); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glClearColor(1, 1, 1, 0); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glMatrixMode(GL_PROJECTION); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glLoadIdentity(); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glOrtho(-70, 70, -70, 70, 1, 0); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutDisplayFunc(display); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(LoadTexture((char *)&quot;image.bmp&quot;) != 1){printf(&quot;Не удалось загрузить изображение\n&quot;);} &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; glutMainLoop(); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0; &lt;br /&gt;
}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;Для загрузки bmp-файла c альфа каналом надо делать так:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;gluBuild2DMipmaps(GL_TEXTURE_2D,&amp;nbsp;4,&amp;nbsp;W,&amp;nbsp;H,&amp;nbsp;GL_BGRA_EXT,&amp;nbsp;GL_UNSIGNED_BYTE,&amp;nbsp;Image);&lt;/span&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7100337724006288595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7100337724006288595'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2012/03/c-glut-bmp.html' title='[C++ glut] функция загрузки текстуры(bmp-файла) и вывод изображения на окно. (кроссплатформенно)'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-3856642035563597291</id><published>2012-02-29T05:21:00.000-08:00</published><updated>2012-02-29T05:21:12.948-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><title type='text'>[C++] Переименовывалка файлов, стащенных с [ВК] в удобочитаемый вид</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Вот я качал и качал музыку с вконтакте, но имя сохраненных файлов мне не очень нравилось, набралось у меня таких mp3 файлов многовато, и я решил их разом переименовать, но как узнать имя, песни файла? альбома? Конечно же их можно стянуть с мета-данных файла. Покопавшись чуток в файле с помощью &quot;hexview&quot; и посмотрев с каких байтов начиналось имя песни, альбом и пр., решил быстренько накатать &quot;переименовывалку файлов&quot;, в общем вот что получилось может кому то пригодится:&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;windows.h&amp;gt;&lt;br /&gt;
#include &amp;lt;fstream&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
WIN32_FIND_DATA winFileData;&lt;br /&gt;
HANDLE hFile;&lt;br /&gt;
char name[30];&lt;br /&gt;
char full_name[94];&lt;br /&gt;
int endOfFile;&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; hFile = FindFirstFile(&quot;*.mp3&quot;, &amp;amp;winFileData);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (hFile!=INVALID_HANDLE_VALUE)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifstream mp3_file(winFileData.cFileName, ios::binary | ios::ate);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; endOfFile = mp3_file.tellg();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp3_file.seekg(endOfFile - 125);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp3_file.read(name, 30);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strcat(full_name, name);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp3_file.read(name, 30);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strcat(full_name, &quot; &quot;); strcat(full_name, name);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp3_file.read(name, 30);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strcat(full_name, &quot; &quot;); strcat(full_name, name); name[4] = &#39;\0&#39;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp3_file.read(name, 4); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strcat(full_name, &quot; &quot;); strcat(full_name, name); strcat(full_name, &quot;.mp3&quot;); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; winFileData.cFileName &amp;lt;&amp;lt; &quot; =&amp;gt; rename to =&amp;gt;&amp;nbsp; &quot; &amp;lt;&amp;lt; full_name &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp3_file.close();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(MoveFile(winFileData.cFileName, full_name) == false){printf(&quot;%d&quot;,GetLastError());}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; full_name[0] = &#39;\0&#39;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (FindNextFile(hFile,&amp;amp;winFileData)!=0);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FindClose(hFile);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; system(&quot;pause&quot;);&lt;br /&gt;
}&lt;br /&gt;
Можно закинуть exe файл в папку где требуется переименовать mp3&#39;шки в удобочитаемый вид или прописать полный путь к каталогу с файлами в функции FindFirstFile, при компиляции.&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3856642035563597291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3856642035563597291'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2012/02/c.html' title='[C++] Переименовывалка файлов, стащенных с [ВК] в удобочитаемый вид'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-2566898139510831169</id><published>2011-11-18T09:41:00.000-08:00</published><updated>2011-11-18T09:41:17.151-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><category scheme="http://www.blogger.com/atom/ns#" term="glut"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><title type='text'>Установка библиотеки glut в ubuntu</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Набираем в терминале:&lt;br /&gt;
======================================&lt;br /&gt;
sudo apt-get install freeglut3 freeglut3-dev libglew1.5 libglew1.5-dev libglu1-mesa libglu1-mesa-dev libgl1-mesa-glx libgl1-mesa-dev mesa-common-dev&lt;br /&gt;
======================================&lt;br /&gt;
Всё готово!&lt;br /&gt;
Подключение заголовочного файла:&lt;br /&gt;
======================================&lt;br /&gt;
#include &amp;lt;GL/freeglut.h&amp;gt;&lt;br /&gt;
======================================&lt;br /&gt;
При компиляции использовать команду:&lt;br /&gt;
======================================&lt;br /&gt;
g++ -lglut -lGL -lGLU -lGLEW source.cpp&lt;br /&gt;
======================================&lt;br /&gt;
&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2566898139510831169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2566898139510831169'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/11/glut-ubuntu.html' title='Установка библиотеки glut в ubuntu'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-2477861745963825362</id><published>2011-08-01T11:08:00.000-07:00</published><updated>2011-08-01T11:08:53.723-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Disqus"/><title type='text'>Поставил систему комментариев Disqus</title><content type='html'>Решил поставить и протестировать систему комментариев &lt;a href=&quot;http://disqus.com&quot; rel=&quot;nofollow&quot;&gt;Disqus&lt;/a&gt;. Пока не знаю даже, оно мне надо или нет...</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/2477861745963825362/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/08/disqus.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2477861745963825362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2477861745963825362'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/08/disqus.html' title='Поставил систему комментариев Disqus'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-7247035754306828837</id><published>2011-07-31T23:43:00.000-07:00</published><updated>2011-07-31T23:48:10.824-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Mozilla Firefox"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="обновление"/><title type='text'>Обновление Firefox до версии 5.0 в Ubuntu</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqsTmWf9MyhbK_mocwE5D1Jap23MaxXD-tvxbOWaVwwFsIFYCjCwIgbInJ-Zooid_oEhXvt6spCORaqDB8wEjy2Gg2wp9rUs-IoW79Alg3-2h_HeJx9ToN3TszCrt91sVydbzP45H0OgQH/s1600/Mozilla_FireFox_update.PNG&quot; rel=&quot;nofollow&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; width=&quot;520&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqsTmWf9MyhbK_mocwE5D1Jap23MaxXD-tvxbOWaVwwFsIFYCjCwIgbInJ-Zooid_oEhXvt6spCORaqDB8wEjy2Gg2wp9rUs-IoW79Alg3-2h_HeJx9ToN3TszCrt91sVydbzP45H0OgQH/s1600/Mozilla_FireFox_update.PNG&quot; title=&quot;Обновление Firefox до версии 5.0&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;На Windows уже давно стоит обновленный Firefox версии 5.0, а на Ubuntu стоял Firefox 3.x.x. В общем подумал я, так дело не пойдет, т.к. мне не очень по душе старый FireFox и я решил обновиться. В Ubuntu, Mozill&#39;у Firefox обновить из самого меню Firefox&#39;a не получилось, т.к. попросту(как я понял) этой кнопочки обновления там нет(в отличие от Windows&#39;овской версии). Погуглив нашел решение, обновился и был рад :)&lt;br /&gt;
И так чтобы обновить Mozill&#39;у Firefox в Ubuntu командуем:&lt;br /&gt;
&lt;hr&gt;sudo add-apt-repository ppa:mozillateam/firefox-stable&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install firefox&lt;br /&gt;
&lt;hr&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/7247035754306828837/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/firefox-50-ubuntu.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7247035754306828837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7247035754306828837'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/firefox-50-ubuntu.html' title='Обновление Firefox до версии 5.0 в Ubuntu'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqsTmWf9MyhbK_mocwE5D1Jap23MaxXD-tvxbOWaVwwFsIFYCjCwIgbInJ-Zooid_oEhXvt6spCORaqDB8wEjy2Gg2wp9rUs-IoW79Alg3-2h_HeJx9ToN3TszCrt91sVydbzP45H0OgQH/s72-c/Mozilla_FireFox_update.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-4110430907078990825</id><published>2011-07-31T11:20:00.000-07:00</published><updated>2011-07-31T17:29:21.068-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><category scheme="http://www.blogger.com/atom/ns#" term="CURL"/><category scheme="http://www.blogger.com/atom/ns#" term="билиотека CURL"/><title type='text'>C++ Работа с библиотекой cURL</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Libcurl это удобная в использовании, свободная, кроссплатформенная библиотека для работы с сетью. Которая поддерживает работу с такими платформами как: Linux, Windows, Solaris, MacOS X и многими другими. В данном посте речь пойдет о использовании libcurl на платформе Windows. Libcurl позволяет работать с протоколами FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. С помощью libcurl можно работать с cookies, с proxy-сервером, можно осуществлять user+password авторизацию, тунеллирование http proxy, также libcurl имеет поддержку SSL сертификатов и многое другое.&lt;br /&gt;
Для начала работы с libcurl надо скачать саму библиотеку, качаем(в нашем случае версию под Windows) с официальной страницы загрузки:&lt;br /&gt;
[&lt;a href=&quot;http://curl.haxx.se/download.html&quot; rel=&quot;nofollow&quot;&gt;http://curl.haxx.se/download.html&lt;/a&gt;]&lt;br /&gt;
&lt;hr /&gt;После скачивания архива, следует разложить файлы архива по своим полочкам. Заголовочные файлы(.h) из папки include, следует поместить в папку include вашего компилятора.&lt;br /&gt;
&lt;hr /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0XvL9UesDfvghw1k8KgU9FsifJCpqYsfUpm6NoSVDlWfEP1J8kpD8_l3z_CXYd7jd3sX5U4gaoY-n-oX9EtY2A9nmlgUY5Slcf9PZ3kOoWKjIYz4YCYQsuzNa1sPSud8MB874zSJQIywS/s1600/include.PNG&quot; rel=&quot;nofollow&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;254&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0XvL9UesDfvghw1k8KgU9FsifJCpqYsfUpm6NoSVDlWfEP1J8kpD8_l3z_CXYd7jd3sX5U4gaoY-n-oX9EtY2A9nmlgUY5Slcf9PZ3kOoWKjIYz4YCYQsuzNa1sPSud8MB874zSJQIywS/s400/include.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr /&gt;Lib-файлы из папки lib, следует поместить в папку lib вашего компилятора.&lt;br /&gt;
&lt;hr /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRUr6Fox1nTzD2E1DkEAxQ5OIK19_-_6MQwOSeGi6xc8oEH-fnCPbdHZJ7RRklb5c2Kd2LiQQSYe5DPtruziWg7XL-DuqO0w7qsB8rVnvVmMfGfFj8Xzle4VEUxhAJ0lxxImcy2eu3RwXo/s1600/lib.PNG&quot; rel=&quot;nofollow&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;378&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRUr6Fox1nTzD2E1DkEAxQ5OIK19_-_6MQwOSeGi6xc8oEH-fnCPbdHZJ7RRklb5c2Kd2LiQQSYe5DPtruziWg7XL-DuqO0w7qsB8rVnvVmMfGfFj8Xzle4VEUxhAJ0lxxImcy2eu3RwXo/s400/lib.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr /&gt;Dll-файлы из папки bin, следует поместить в папку System32 Windows&#39;a&lt;br /&gt;
&lt;hr /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFu-bHlDabWcCguP_25WvSDSNdFCq_DgPbcfS5ijv_WMlEouCgJZ-XvREclcEQlcXIfNPqV2QUS4D3yORUraBWlADRHuDb2tLw6dDdwFH_8ISk-28hCKzUZWCtYTXjzjWkJVPEhvGsFjLX/s1600/dll.PNG&quot; rel=&quot;nofollow&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;294&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFu-bHlDabWcCguP_25WvSDSNdFCq_DgPbcfS5ijv_WMlEouCgJZ-XvREclcEQlcXIfNPqV2QUS4D3yORUraBWlADRHuDb2tLw6dDdwFH_8ISk-28hCKzUZWCtYTXjzjWkJVPEhvGsFjLX/s400/dll.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr /&gt;Теперь всё готово и можно приступать к изучению самого синтаксиса libcurl, и написанию кода. С помощью libcurl можно работать с многопоточным интерфейсом (The multi interface) и просты интерфейсом (The Easy interface). Я затрону только простой интерфейс (The Easy interface).&lt;hr&gt;Для работы с библиотекой необходимо подключить заголовочный файл &quot;curl.h&quot; и нужные lib-файлы.&lt;br /&gt;
======================&lt;br /&gt;
#include &amp;lt;curl/curl.h&amp;gt;&lt;br /&gt;
======================&lt;br /&gt;
также подключите к проекту lib-файлы: /lib/libcurl.a и /lib/libcurldll.a&lt;br /&gt;
&lt;br /&gt;
Теперь нам надо создать необходимый объект типа CURL:&lt;br /&gt;
===========&lt;br /&gt;
CURL *&lt;b&gt;curl&lt;/b&gt;;&lt;br /&gt;
===========&lt;br /&gt;
&lt;br /&gt;
После чего скормить его функции curl_easy_init() для инициализации и открытия новой сессии, функция возвращает объект типа CURL или же NULL, если произошла какая то ошибка.&lt;br /&gt;
========================&lt;br /&gt;
&lt;b&gt;curl&lt;/b&gt; = curl_easy_init();&lt;br /&gt;
========================&lt;br /&gt;
&lt;br /&gt;
Примерно как выглядит работа с библиотекой в виде кода:&lt;br /&gt;
=================================&lt;br /&gt;
CURL *&lt;b&gt;curl&lt;/b&gt;; //объект типа CURL&lt;br /&gt;
&lt;b&gt;curl&lt;/b&gt; = curl_easy_init(); //инициализация&lt;br /&gt;
if(&lt;b&gt;curl&lt;/b&gt;) //проверка&lt;br /&gt;
{&lt;br /&gt;
//работа с библиотекой&lt;br /&gt;
}&lt;br /&gt;
==================================&lt;br /&gt;
&lt;hr /&gt;Далее после инициализации библиотеки работаем с функцией curl_easy_setopt(), которой мы задаем нужныем нам опции и параметры к ним. Функция curl_easy_setopt(CURL *&lt;b&gt;curl&lt;/b&gt;, CURL option, parameter) принимает три аргумента это:&lt;br /&gt;
CURL *&lt;b&gt;curl&lt;/b&gt; - инициализированный объект типа CURL, в нашем случае это &lt;b&gt;curl&lt;/b&gt;&lt;br /&gt;
CURL option - опция CURL библиотеки, о них ниже.&lt;br /&gt;
parameter - параметр который будет использоваться с заданной опцией, может быть числом, строкой, указателем на функцию или указателем на буфер принимаемых данных. Функцию curl_easy_setopt() мы можем вызвать несколько раз, применяя для неё разные опции.&lt;br /&gt;
&lt;hr /&gt;Теперь наконец можно приступить к самому интересному и удобному на мой взгляд в этой библиотеке, к опциям. Рассмотрим часто используемые опции.&lt;br /&gt;
&lt;hr /&gt;&lt;b&gt;CURLOPT_URL&lt;/b&gt; - опция с помощью которой мы задаем URL, с которым будем работать, например в параметре может быть google.com, http://google.com, ftp://example.com/ и т.д., можно указывать с протоколом например(http, ftp) можно и без протокола.&lt;br /&gt;
=====================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_URL, &quot;http://google.com&quot;);&lt;br /&gt;
=====================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_HEADER&lt;/b&gt; - Опция отображения http заголовка, если установлено в нулевое значение то headers не будет отображен в полученных данных, если же значение установлено в ненулевое значение, то заголовок будет отображен  полученных данных.&lt;br /&gt;
=====================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_HEADER, 1);&lt;br /&gt;
=====================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_PROXY&lt;/b&gt; - Опция с помощью который мы задаем использовать прокси, в значение передаем ip-адрес прокси-сервера и порт через двоеточие.&lt;br /&gt;
=====================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_PROXY, &quot;ip_proxy:8080&quot;)&lt;br /&gt;
=====================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_PROXYUSERPWD&lt;/b&gt; - Опция с помощью которой мы задаем логин и пароль(через двоеточие) для аутентификации на прокси-сервере.&lt;br /&gt;
=====================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_PROXYUSERPWD, &quot;логин:пароль&quot;)&lt;br /&gt;
=====================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_PORT&lt;/b&gt; - С помощью этой опции мы задаем порт удаленного узла, если опция не задана то используются порты по умолчанию(для http - 80 порт, для ftp - 21 порт и т.д.)&lt;br /&gt;
=====================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_PORT, 8080)&lt;br /&gt;
=====================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_WRITEFUNCTION&lt;/b&gt; - Опция с помощью которой мы задаем функцию которая будет принимать данные, в качестве параметра мы передаем указатель на функцию(о данной функции ниже)&lt;br /&gt;
=====================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_WRITEFUNCTION, write_function);&lt;br /&gt;
=====================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_READFUNCTION&lt;/b&gt; - Опция аналогичная &lt;b&gt;CURLOPT_WRITEFUNCTION&lt;/b&gt;, но только в качестве параметра задается функция для передачи данных.&lt;br /&gt;
======================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_READFUNCTION, read_function);&lt;br /&gt;
======================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_WRITEDATA&lt;/b&gt; - C помощью данной опции мы указываем куда записать принимаемые данные.&lt;br /&gt;
======================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_WRITEDATA, &amp;amp;buffer);&lt;br /&gt;
======================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_READDATA&lt;/b&gt; - Опция аналогичная &lt;b&gt;CURLOPT_WRITEDATA&lt;/b&gt;, но только для передачи данных.&lt;br /&gt;
======================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_READDATA, &amp;amp;buffer);&lt;br /&gt;
======================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_ERRORBUFFER&lt;/b&gt; - С помощью данной опции мы можем указать куда будут записываться сообщения об ошибках.&lt;br /&gt;
======================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_ERRORBUFFER, error_buffer);&lt;br /&gt;
======================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_USERNAME&lt;/b&gt; - Опция которая задает имя пользователя, например для аутентификации на ftp-сервере.&lt;br /&gt;
======================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_USERNAME, &quot;user_nullflow&quot;);&lt;br /&gt;
======================================================&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CURLOPT_PASSWORD&lt;/b&gt; - Опция которая задает пароль для аутентификации на сервере(например на ftp).&lt;br /&gt;
======================================================&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_PASSWORD, &quot;password&quot;);&lt;br /&gt;
======================================================&lt;br /&gt;
&lt;hr /&gt;Думаю столько опций на первое время хватит, я не могу сюда написать все опции т.к. их великое множество и всех я не знаю. Более обширный список опций с их описанием можно посмотреть &lt;a href=&quot;http://curl.haxx.se/libcurl/c/curl_easy_setopt.html&quot; rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Функция для опций &lt;b&gt;CURLOPT_WRITEFUNCTION&lt;/b&gt; и &lt;b&gt;CURLOPT_READFUNCTION&lt;/b&gt; выглядит следующим образом:&lt;br /&gt;
size_t read_write_function(void *data, size_t size, size_t n, void *buffer)&lt;br /&gt;
data - указатель на принимаемые данные.&lt;br /&gt;
size - размер принимаемого блока данных&lt;br /&gt;
n - общее количество блоков данных.&lt;br /&gt;
buffer - для опции &lt;b&gt;CURLOPT_WRITEDATA&lt;/b&gt; определяет куда будет производится запись, а для опции &lt;b&gt;CURLOPT_READFUNCTION&lt;/b&gt; определяет откуда будут считываться данные.&lt;br /&gt;
&lt;br /&gt;
После завершения всех нужных нам операций, мы должны завершить текущую сессию при помощи функции void curl_easy_cleanup(CURL *&lt;b&gt;curl&lt;/b&gt;)&lt;br /&gt;
&lt;br /&gt;
Теперь, наконец мы можем рассмотреть простенький пример работы с libcurl, получения веб-страницы.&lt;br /&gt;
&lt;hr&gt;#include &amp;lt;curl/curl.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
CURL *&lt;b&gt;curl&lt;/b&gt;;&lt;i&gt;//Объект CURL&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//объект в который будет записан результат вызова функции curl_easy_perform&lt;/i&gt;&lt;br /&gt;
CURLcode res;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//выполняем инициализацю&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;curl&lt;/b&gt; = curl_easy_init();&lt;br /&gt;
&lt;br /&gt;
if(&lt;b&gt;curl&lt;/b&gt;) { &lt;i&gt;//проверяем все ли ОК&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;//дальше работаем с опциями&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//задаем опцию получить страницу http://nullflow.blogspot.com&lt;/i&gt;&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_URL, &quot;http://nullflow.blogspot.com&quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//указываем использовать прокси сервер&lt;/i&gt;&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_PROXY, &quot;ip_proxy:8080&quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//задаем опцию отображение заголовка страницы&lt;/i&gt;&lt;br /&gt;
curl_easy_setopt(&lt;b&gt;curl&lt;/b&gt;, CURLOPT_HEADER, 1);&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//вызываем функцию curl_easy_perform которая обработает все наши заданные опции и вернет результат, если res будет равен 0 то начит всё прошло успешно, иначе возникла какая то ошибка.&lt;/i&gt;&lt;br /&gt;
res = curl_easy_perform(&lt;b&gt;curl&lt;/b&gt;);&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;//завершаем нашу сессию&lt;/i&gt;&lt;br /&gt;
curl_easy_cleanup(&lt;b&gt;curl&lt;/b&gt;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;hr&gt;&lt;/curl&gt;&lt;/div&gt;P.S. В дальнейшем, думаю напишу еще несколько примеров использования libcurl.</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/4110430907078990825/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/c-curl.html#comment-form' title='Комментарии: 3'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/4110430907078990825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/4110430907078990825'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/c-curl.html' title='C++ Работа с библиотекой cURL'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0XvL9UesDfvghw1k8KgU9FsifJCpqYsfUpm6NoSVDlWfEP1J8kpD8_l3z_CXYd7jd3sX5U4gaoY-n-oX9EtY2A9nmlgUY5Slcf9PZ3kOoWKjIYz4YCYQsuzNa1sPSud8MB874zSJQIywS/s72-c/include.PNG" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-5044086346403682555</id><published>2011-07-25T12:08:00.000-07:00</published><updated>2011-07-25T12:08:52.217-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="улыбнуло"/><category scheme="http://www.blogger.com/atom/ns#" term="яндекс"/><title type='text'>Яндекс проиндексировал данные покупателей онлайн магазинов</title><content type='html'>Недавно как некоторые наверно уже знают Яндекс(ЯндексБаром) спалил смс&#39;ки мегафон&#39;овцев, которые отправляли смс с сайта мегафона. А теперь же Яшка спалил данные покупателей онлайн магазинов, которые похоже все работают на одном и том же движке(могу ошибаться). Вводим в Яндексе (inurl:0 inurl:b inurl:1 inurl:c статус заказа) и видим ссылки с данными: ukey, orderID, code, hash. Чего достаточно чтобы получить данные о покупателе: Ф.И.О, e-mail, ip-адрес, Адрес доставки заказа, Адрес плательщика, время заказа, товар и др. Также нам Яшка сообщает что &quot;Нашлось&lt;br /&gt;
52 тыс. ответов&quot;. В общем думаю Яндексу все равно ничего не смогут сделать так что он останется безнаказанным, хотя если подумать это администраторы сайтов в этом виноваты, это они должны приватную информацию скрывать от посторонних глаз.</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/5044086346403682555/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post_25.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/5044086346403682555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/5044086346403682555'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post_25.html' title='Яндекс проиндексировал данные покупателей онлайн магазинов'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-3470194047759798798</id><published>2011-07-23T11:20:00.000-07:00</published><updated>2011-07-23T11:21:34.874-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><title type='text'>C++ Как принимать переданные(консольному приложению) параметры</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;В консольном приложении, главная функция &lt;b&gt;main&lt;/b&gt;(&lt;span style=&quot;color: red;&quot;&gt;int&lt;/span&gt; &lt;b&gt;argc&lt;/b&gt;, &lt;span style=&quot;color: red;&quot;&gt;char&lt;/span&gt; &lt;b&gt;**argv&lt;/b&gt;) принимает два аргумента.&lt;br /&gt;
Это (&lt;span style=&quot;color: red;&quot;&gt;int&lt;/span&gt; &lt;b&gt;argc&lt;/b&gt;) - количество переданных параметров(если ничего не передано то оно равно 1) и (&lt;span style=&quot;color: red;&quot;&gt;char&lt;/span&gt; &lt;b&gt;**argv&lt;/b&gt;) - сами параметры, где &lt;b&gt;argv&lt;/b&gt;[0] это первый параметр, &lt;b&gt;argv&lt;/b&gt;[1] второй, и т.д.&lt;br /&gt;
В &lt;b&gt;argv&lt;/b&gt;[0] всегда содержится путь до исполняемого файла, а уже в других &lt;b&gt;argv&lt;/b&gt;[1], &lt;b&gt;argv&lt;/b&gt;[2], &lt;b&gt;argv&lt;/b&gt;[3] и т.д. содеражаться параметры переданные самим пользователем.&lt;br /&gt;
&lt;br /&gt;
Пример программы которой передаются два параметра с последующим выводом их на экран:&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main(int argc, char **argv)&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;Параметров:&quot; &amp;lt;&amp;lt; argc &amp;lt;&amp;lt; endl;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; argv[0] &amp;lt;&amp;lt; endl;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; argv[1] &amp;lt;&amp;lt; endl;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; argv[2] &amp;lt;&amp;lt; endl;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; system(&quot;pause&quot;);&lt;br /&gt;
}&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/3470194047759798798/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/c_23.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3470194047759798798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3470194047759798798'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/c_23.html' title='C++ Как принимать переданные(консольному приложению) параметры'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-1775246111411840337</id><published>2011-07-20T11:42:00.000-07:00</published><updated>2011-07-20T11:48:44.575-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><category scheme="http://www.blogger.com/atom/ns#" term="find"/><category scheme="http://www.blogger.com/atom/ns#" term="string"/><title type='text'>C++ string:find</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Функция &lt;b&gt;find&lt;/b&gt; библиотеки &lt;b&gt;string&lt;/b&gt; ищет последовательность заданных символов в заданной строке, и возвращает количество символов стоящих перед заданными символом(ами) которые мы искали.&lt;br /&gt;
&lt;br /&gt;
Пример использования:&lt;br /&gt;
#include &amp;lt;&lt;b&gt;string&lt;/b&gt;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
&lt;b&gt;string&lt;/b&gt; Line = &quot;test: &lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt; text bla-bla-bla&quot;;&lt;br /&gt;
size_t i;//объявляем переменную для хранения индекса, можно использовать int&lt;br /&gt;
i = Line.&lt;b&gt;find&lt;/b&gt;(&quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot;);//задаем искать слово &quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot;&lt;br /&gt;
cout &amp;lt;&amp;lt; i;//выводит 6 т.к. до слова &quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot; присутствуют 6 символов &quot;test: &quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Также функцию &lt;b&gt;find&lt;/b&gt; можно применять для проверки, есть ли нужное нам слово в заданной строке или нет:&lt;br /&gt;
Пример:&lt;br /&gt;
if (Line.&lt;b&gt;find&lt;/b&gt;(&quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot;)!=&lt;b&gt;string&lt;/b&gt;::npos)//проверяем есль ли в строке Line слово &quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot;&lt;br /&gt;
{&lt;br /&gt;
//если в строке Line есть слово &quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot; то...&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
//если в строке Line нет слова &quot;&lt;span style=&quot;color: red;&quot;&gt;super&lt;/span&gt;&quot; то...&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/1775246111411840337/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/c-stringfind.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1775246111411840337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1775246111411840337'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/c-stringfind.html' title='C++ string:find'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-4383981424986699129</id><published>2011-07-12T11:43:00.000-07:00</published><updated>2011-07-12T11:46:07.541-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="google"/><category scheme="http://www.blogger.com/atom/ns#" term="Mozilla Firefox"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="yandex"/><title type='text'>Как поменять поисковик в Ubuntu в Mozilla Firefox</title><content type='html'>Понадобилось поменять поисковик в &lt;b&gt;Mozilla Firefox&lt;/b&gt; в &lt;b&gt;Ubuntu&lt;/b&gt;. И так чтобы сменить поисковик по умолчанию нужно проделать несколько простых шагов.&lt;br /&gt;
1. Набираем в адресной строке about:config и попадаем в святое место &lt;b&gt;Mozill&#39;ы&lt;/b&gt; ^__^&lt;hr&gt;2. Соглашаемся что мы будем осторожны.&lt;hr&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcdVubrdFrz7vVxqYfja3fyWrwFjPfzzgMbEkGhVc810mgodA6bzmlv85bPyqOrgb7Gsq9ccWf_KfC2ZOrx345rDcsg7lGZCOKC2Fl_Lz1HrtTxzmiJqpZAZlPtdwX506tnBxpoXD024vS/s1600/Screenshot.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;120&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcdVubrdFrz7vVxqYfja3fyWrwFjPfzzgMbEkGhVc810mgodA6bzmlv85bPyqOrgb7Gsq9ccWf_KfC2ZOrx345rDcsg7lGZCOKC2Fl_Lz1HrtTxzmiJqpZAZlPtdwX506tnBxpoXD024vS/s400/Screenshot.png&quot; title=&quot;Mozilla Firefox - Ubuntu&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;3. Находим ключ &quot;&lt;b&gt;keyword.URL&lt;/b&gt;&quot; и изменяем значение на нужный вам поисковик, т.к. мне нужен был просто гугл с русской выдачей то я использовал &lt;font color=&quot;red&quot;&gt;&lt;i&gt;«http://www.google.ru/#hl=ru&amp;source=hp&amp;q=»&lt;/i&gt;&lt;/font&gt;&lt;hr&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge9TzpLzDO-U2sw09nTefbeA5xSM375Ic0e56Whe4bypNmFWr7iCgnf81aZXFf5897GKR60ncK29aPMHAdPU5jNhdYLoHtLDejHv9-oWT7FDcbUwa1aYp5Am4TSURkp2lWyO-Ddu-3lRYH/s1600/Screenshot-1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;34&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge9TzpLzDO-U2sw09nTefbeA5xSM375Ic0e56Whe4bypNmFWr7iCgnf81aZXFf5897GKR60ncK29aPMHAdPU5jNhdYLoHtLDejHv9-oWT7FDcbUwa1aYp5Am4TSURkp2lWyO-Ddu-3lRYH/s400/Screenshot-1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;4.Если вам нужен другой поисковик то идёте к нему вводите что нибудь в поиск, после чего копируете нужную часть адреса(кусок get-запроса). Например для yandex.ru это будет &lt;font color=&quot;red&quot;&gt;&lt;i&gt;«http://yandex.ru/yandsearch?text=»&lt;/i&gt;&lt;/font&gt; Также можно настроить поиск например для поиска видео на youtube.com(&lt;font color=&quot;red&quot;&gt;&lt;i&gt;&quot;http://www.youtube.com/results?search_query=&quot;&lt;/i&gt;&lt;/font&gt;) и т.п. в общем придумывайте сами, всё зависит только от того &quot;что&quot; вы хотите искать и &quot;где&quot; искать. Удачи!</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/4383981424986699129/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/ubuntu-mozilla-firefox.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/4383981424986699129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/4383981424986699129'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/ubuntu-mozilla-firefox.html' title='Как поменять поисковик в Ubuntu в Mozilla Firefox'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcdVubrdFrz7vVxqYfja3fyWrwFjPfzzgMbEkGhVc810mgodA6bzmlv85bPyqOrgb7Gsq9ccWf_KfC2ZOrx345rDcsg7lGZCOKC2Fl_Lz1HrtTxzmiJqpZAZlPtdwX506tnBxpoXD024vS/s72-c/Screenshot.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-4489806402515177137</id><published>2011-07-07T17:00:00.000-07:00</published><updated>2011-07-07T17:02:57.524-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="телефон"/><category scheme="http://www.blogger.com/atom/ns#" term="электроника"/><title type='text'>Cолнечная зарядка для мобильного телефона</title><content type='html'>&lt;iframe width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/CrbyPeS-RQw?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/4489806402515177137/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/c.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/4489806402515177137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/4489806402515177137'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/c.html' title='Cолнечная зарядка для мобильного телефона'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/CrbyPeS-RQw/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-7508568656136583185</id><published>2011-07-05T18:50:00.000-07:00</published><updated>2011-07-05T18:54:10.644-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="интересно"/><category scheme="http://www.blogger.com/atom/ns#" term="придумали"/><title type='text'>Принтер печатающий облака (видео)</title><content type='html'>Сегодня на блоге &lt;a href=&quot;http://megainteresno.blogspot.com&quot;&gt;Starkkk&#39;a&lt;/a&gt; наткнулся на это интересное видео, где демонстрируется &quot;принтер печатающий облака&quot; :D&lt;hr&gt;&lt;iframe width=&quot;560&quot; height=&quot;349&quot; src=&quot;http://www.youtube.com/embed/rN-mfQsno2g?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/7508568656136583185/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post_05.html#comment-form' title='Комментарии: 5'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7508568656136583185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/7508568656136583185'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post_05.html' title='Принтер печатающий облака (видео)'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/rN-mfQsno2g/default.jpg" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-3241205585893637069</id><published>2011-07-03T10:09:00.000-07:00</published><updated>2011-07-03T10:09:35.463-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="блог"/><category scheme="http://www.blogger.com/atom/ns#" term="блоггинг"/><category scheme="http://www.blogger.com/atom/ns#" term="пригодится"/><title type='text'>Список блого-сервисов</title><content type='html'>Вот думал я откуда можно достать более обширный списочек блого-сервисов. Чтоб можно было посмотреть, оценить, использовать. Оказывается это всё есть на нашем &lt;strike&gt;родном&lt;/strike&gt; yandex&#39;е. &lt;a href=&quot;http://blogs.yandex.ru/services/&quot; rel=&quot;nofollow&quot;&gt;&lt;-[ Блого-сервисы ]-&gt;&lt;/a&gt;.&lt;hr&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPy28jucr7W3ptYVg6v_4SQrr2IgrqYuUkc_UyNrkIZqR8tIlq77s46IvVCmim5M-nZnVVJ5R_prC3lHUkkYb2XCIDueDoNNBC2ws8_xwJLPWumF3eG6rFIK7B4SAHSoaBPahWU1_wr3ma/s1600/wabbit.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;190&quot; width=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPy28jucr7W3ptYVg6v_4SQrr2IgrqYuUkc_UyNrkIZqR8tIlq77s46IvVCmim5M-nZnVVJ5R_prC3lHUkkYb2XCIDueDoNNBC2ws8_xwJLPWumF3eG6rFIK7B4SAHSoaBPahWU1_wr3ma/s400/wabbit.gif&quot; loop=true title=&quot;Зайчики, много зайчиков...&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/3241205585893637069/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post_03.html#comment-form' title='Комментарии: 4'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3241205585893637069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3241205585893637069'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post_03.html' title='Список блого-сервисов'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPy28jucr7W3ptYVg6v_4SQrr2IgrqYuUkc_UyNrkIZqR8tIlq77s46IvVCmim5M-nZnVVJ5R_prC3lHUkkYb2XCIDueDoNNBC2ws8_xwJLPWumF3eG6rFIK7B4SAHSoaBPahWU1_wr3ma/s72-c/wabbit.gif" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-747812173780982178</id><published>2011-07-02T06:47:00.000-07:00</published><updated>2011-07-02T06:47:55.297-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Токио"/><category scheme="http://www.blogger.com/atom/ns#" term="Япония"/><title type='text'>Немножко интересных фактов о Токио</title><content type='html'>&lt;i&gt;Переполненные поезда в Токио:&lt;/i&gt;&lt;br /&gt;
В час пик практически невозможно передвигаться в транспорте. Поезда имеют право отказывать пассажирам в предоставлении своих услуг и довольно часто это право используют. Смотрел видео на эту тему это правда, все хотят зайти и навалом заваливаются, и некоторым просто физически места не хватает, и они остаются ждать следующий поезд или же они вынуждены отдаваться на растерзание хищным таксистам, вот так вот в городе Токио в стране восходящего солнца. &lt;br /&gt;
&lt;br /&gt;
В Японии огромное количество разных обслуживающих автоматов из них более 5,5 миллионов торговых автоматов, не считая устройств по продаже билетов. В большинстве из них можно купить кофе, зеленый чай, безалкогольные напитки и закуски. Так же читал однажды новость что какая то компания разместила в Токио автоматы по продаже золота... Ну что сказать всё автоматизировано и роботизировано у них там :) вот так вот...&lt;br /&gt;
&lt;br /&gt;
Считается, что около 20% жителей Токио страдают от аллергии на кипарисовые и кедровые деревья. Поэтому не стоит удивляться, что в поездах многие из них надевают марлевые повязки. А если брать не только Токио то процент страдающих аллергией на эти деревья в Японии очень-очень высок. Даже эта проблема аллергии стоит выше вопроса загрязненности воздуха в Токио. Но несмотря на всю его загрязненность, воздух в Токио гораздо чище, чем в европейских или западных городах. Там как бы не пыхтят как у нас старыми заводами, а используют более современные и экологически чистые способы в промышленности.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Соседи, чаще всего, остаются незнакомыми Вам людьми всю жизнь:&lt;/i&gt;&lt;br /&gt;
Живя много лет по соседству, люди не знают друг друга. Маленькие сувениры и знаки внимания не пользуются популярностью. Новых поселенцев приветствовать не принято. Что ж, на деле столица Японии так же холодна и бесчувственна, как и иные столицы. Ну не совсем так конечно, там ко всем с уважением относятся(имеется ввиду взрослое поколение) но это правда то что ты без проблем останешься незнакомым соседу и он тебе.</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/747812173780982178/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post.html#comment-form' title='Комментарии: 6'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/747812173780982178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/747812173780982178'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/blog-post.html' title='Немножко интересных фактов о Токио'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-3761123528411586073</id><published>2011-07-02T04:19:00.000-07:00</published><updated>2011-07-02T04:26:00.202-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Dr.Web"/><category scheme="http://www.blogger.com/atom/ns#" term="просто наткнулся"/><title type='text'>Конкурс от Dr.Web</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOAaZMKeS7_mNuNMK0Jz2YvKo37yc4VyRQsVkpvEQTZj71wkPrBcZaHNgB48LyrTmEYOpa6lIYvfGass255Qjc3Bef-vBJct8Dby5DbCWhRalPv3zYzZofi-i2hhzOcpscAQPLRyF38DJs/s1600/bg_index.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;205&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOAaZMKeS7_mNuNMK0Jz2YvKo37yc4VyRQsVkpvEQTZj71wkPrBcZaHNgB48LyrTmEYOpa6lIYvfGass255Qjc3Bef-vBJct8Dby5DbCWhRalPv3zYzZofi-i2hhzOcpscAQPLRyF38DJs/s400/bg_index.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Недавно наткнулся на Конкурс «Спецэффект Dr.Web» Для участия надо опробовать их утилиту Dr.Web CureNet и ответить на вопросы анкеты о результатах использования Dr.Web CureNet! В общем кому интересно &lt;a href=&quot;http://www.drweb.com/drweb+samag/konkurs&quot; rel=&quot;nofollow&quot;&gt;вот&lt;/a&gt;.</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/3761123528411586073/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/07/drweb.html#comment-form' title='Комментарии: 9'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3761123528411586073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/3761123528411586073'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/07/drweb.html' title='Конкурс от Dr.Web'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOAaZMKeS7_mNuNMK0Jz2YvKo37yc4VyRQsVkpvEQTZj71wkPrBcZaHNgB48LyrTmEYOpa6lIYvfGass255Qjc3Bef-vBJct8Dby5DbCWhRalPv3zYzZofi-i2hhzOcpscAQPLRyF38DJs/s72-c/bg_index.jpg" height="72" width="72"/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-1540070625206619202</id><published>2011-05-18T03:03:00.000-07:00</published><updated>2011-05-18T03:05:34.374-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="интересно"/><category scheme="http://www.blogger.com/atom/ns#" term="скачать"/><title type='text'>Фильм &amp;#147;Вращение ручки&amp;#148;</title><content type='html'>&lt;hr&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNirQGoEOCIAxZNCP_wM4gbsPlk5awvktTDq3XxVFUnZnBleYQP0Db0OE1jclgzrREz05MgTmnj4pPjR9nUg9HaZfPTwFCf3FU-SzvxoyqZWjZ4pHlEQwv8Ev7xgCgKPqshyaSJfYZYKEO/s1600/pen_vrachenie.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNirQGoEOCIAxZNCP_wM4gbsPlk5awvktTDq3XxVFUnZnBleYQP0Db0OE1jclgzrREz05MgTmnj4pPjR9nUg9HaZfPTwFCf3FU-SzvxoyqZWjZ4pHlEQwv8Ev7xgCgKPqshyaSJfYZYKEO/s400/pen_vrachenie.jpeg&quot; title=&quot;Профессиональное вращение ручки&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Вчера в поисках чео нибудь скачать интересного, наткнулся на &lt;a href=&quot;http://www.videourokov.net/main/other/10696-vrashhenie-ruchki-pen-spinning-2011webrip.html&quot; rel=&quot;nofollow&quot;&gt;фильм о &lt;b&gt;Penspinning&lt;/b&gt;&#39;e&lt;/a&gt;. Пока не качал, сегодня скачаю и посмотрю по возможности. Блин у меня голд акков на лититбит, shareflare, vip-file нет, надо бы пробить.&lt;hr&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/1540070625206619202/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/05/blog-post_18.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1540070625206619202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1540070625206619202'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/05/blog-post_18.html' title='Фильм &amp;#147;Вращение ручки&amp;#148;'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNirQGoEOCIAxZNCP_wM4gbsPlk5awvktTDq3XxVFUnZnBleYQP0Db0OE1jclgzrREz05MgTmnj4pPjR9nUg9HaZfPTwFCf3FU-SzvxoyqZWjZ4pHlEQwv8Ev7xgCgKPqshyaSJfYZYKEO/s72-c/pen_vrachenie.jpeg" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-1289414951379013893</id><published>2011-05-18T02:47:00.000-07:00</published><updated>2011-05-18T03:09:03.713-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><category scheme="http://www.blogger.com/atom/ns#" term="функция"/><title type='text'>C++ функция _getch</title><content type='html'>int &lt;b&gt;_getch&lt;/b&gt;(); // функция ждёт нажатия любой клавиши, и возвращает её код&lt;br /&gt;
для использования функции требуется библиотека: &lt;b&gt;conio.h&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
char a = &lt;b&gt;_getch&lt;/b&gt;(); // Переменной &quot;a&quot; будет присвоена нажатая клавиша&lt;br /&gt;
int i = &lt;b&gt;_getch&lt;/b&gt;(); // Переменной &quot;i&quot; будет присвоен код нажатой клавиши&lt;br /&gt;
&lt;b&gt;_getch&lt;/b&gt;(); // Будет ждать пока пользователь не нажмёт любую клавишу&lt;br /&gt;
функцию &lt;b&gt;_getch&lt;/b&gt;() также можно использовать и с &lt;b&gt;Virtual_Key_Codes&lt;/b&gt;&lt;br /&gt;
Примеры использования:&lt;hr&gt;#include&amp;#060;iostream&amp;#062;&lt;br /&gt;
#include&amp;#060;windows.h&amp;#062;&lt;br /&gt;
#include&amp;#060;conio.h&amp;#062;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
int i = _getch();&lt;br /&gt;
cout &lt;&lt; i &lt;&lt; &quot;\n&quot;; //Выведет на экран код нажатой клавиши;&lt;br /&gt;
&lt;br /&gt;
cout &lt;&lt; &quot;Нажми на клавишу&quot; &lt;&lt; endl;&lt;br /&gt;
if (_getch() == &#39;q&#39;)&lt;br /&gt;
{cout &lt;&lt; &quot;q&quot; &lt;&lt; &quot;\n&quot;;}&lt;br /&gt;
else {cout &lt;&lt; &quot;Вы нажали какую то клавишу но точно не q&quot; &lt;&lt; endl;}&lt;br /&gt;
&lt;br /&gt;
if (_getch() == VK_RETURN)&lt;br /&gt;
{cout &lt;&lt; &quot;Вы нажали enter&quot; &lt;&lt; endl;}&lt;br /&gt;
else{ cout &lt;&lt; &quot;Вы нажали какую то клавишу но точно не enter&quot; &lt;&lt; endl;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
system(&quot;pause&quot;);&lt;br /&gt;
return 0;&lt;br /&gt;
}</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/1289414951379013893/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/05/c-getch.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1289414951379013893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/1289414951379013893'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/05/c-getch.html' title='C++ функция _getch'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-8322984515143881153</id><published>2011-05-17T00:10:00.000-07:00</published><updated>2011-05-17T00:17:15.437-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="burg"/><category scheme="http://www.blogger.com/atom/ns#" term="grub"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="нравиться"/><category scheme="http://www.blogger.com/atom/ns#" term="программулины"/><title type='text'>Меняем скучный grub на burg</title><content type='html'>&lt;b&gt;BURG&lt;/b&gt; - это программа настройки менеджера загрузки, предоставляющая более красивый и живой интерфейс для загрузки, чем &lt;b&gt;GRUB&lt;/b&gt;.&lt;br /&gt;
После установки &lt;b&gt;burg&lt;/b&gt;&#39;a можно будет задать любую темку или создать свою темку. В которой можно указать фоновый рисунок, разрешение, значки, время задержки и т.д.&lt;br /&gt;
Примеры тем:&lt;hr color=&quot;red&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe-1DllK3Qa3-1c9S6I8W0gFI36cof8A3dXuo4p_hyJ7FifmAuGjqZ_TRBv8LztTidkRbEt2xE4idN-dM0QGnIgCp-pFx-MMDXFjpRGISlbV-lfEaAVQzfGiKsLuLRAsIrPXzVVr1RtFd/s1600/burg.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe-1DllK3Qa3-1c9S6I8W0gFI36cof8A3dXuo4p_hyJ7FifmAuGjqZ_TRBv8LztTidkRbEt2xE4idN-dM0QGnIgCp-pFx-MMDXFjpRGISlbV-lfEaAVQzfGiKsLuLRAsIrPXzVVr1RtFd/s400/burg.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKNXtsdHOqt_fY_VVqGigUM-jQP51Q2OAIWLUXVxhIxC8RUZ7KakjvyDEUvlyqShE2TA0LvsDyQ-usV4xKQ5PVliy1uLb-EzlR59mLq2-G2-ejHO_7t0cz8pFabslltb8zkaYyrdZAWN7t/s1600/burg_1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;307&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKNXtsdHOqt_fY_VVqGigUM-jQP51Q2OAIWLUXVxhIxC8RUZ7KakjvyDEUvlyqShE2TA0LvsDyQ-usV4xKQ5PVliy1uLb-EzlR59mLq2-G2-ejHO_7t0cz8pFabslltb8zkaYyrdZAWN7t/s400/burg_1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr color=&quot;red&quot;&gt;&lt;center&gt;&lt;b&gt;Установка Burg&lt;/b&gt;&lt;/center&gt;&lt;br /&gt;
Для установки выполним следующие команды:&lt;br /&gt;
sudo add-apt-repository ppa:bean123ch/burg&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install burg burg-themes&lt;br /&gt;
При установке &lt;b&gt;burg&lt;/b&gt; надо указать некоторые настройки:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;hr&gt;В первых двух пунктах просто жмем &quot;ok&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOUQV6tI_wFScwi_ddhmJCuzFZR9f2OgEtecgJSOq42tlE30RrudJdKBAl3BOBE3n-uuq41E2zHkiwODA0taguPkkgDFmO2TwrJsjeDbtS8fHbwGlbDCu8FivFJ9gf0FKIWthIQ3FbPavd/s1600/burg_4.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;232&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOUQV6tI_wFScwi_ddhmJCuzFZR9f2OgEtecgJSOq42tlE30RrudJdKBAl3BOBE3n-uuq41E2zHkiwODA0taguPkkgDFmO2TwrJsjeDbtS8fHbwGlbDCu8FivFJ9gf0FKIWthIQ3FbPavd/s400/burg_4.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggUreRr6OE6YdKcyFPtFx9NpcmT_6aKaEFxqK-K3lE0HlPCouAGLX85H64Xm3-BFf9XIi23KJL6n-ywzkQ19uGyMaT4aUG8lbt1GnzSpimjNxiwwA7ErjqJlYSP-FppfHQWs1lUH3_I8ye/s1600/burg_2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;232&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggUreRr6OE6YdKcyFPtFx9NpcmT_6aKaEFxqK-K3lE0HlPCouAGLX85H64Xm3-BFf9XIi23KJL6n-ywzkQ19uGyMaT4aUG8lbt1GnzSpimjNxiwwA7ErjqJlYSP-FppfHQWs1lUH3_I8ye/s400/burg_2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;В третьем пункте надо выбрать носитель, в MBR которого будет установлен &lt;b&gt;burg&lt;/b&gt;&lt;br /&gt;
Выбираем носитель и ставим звездочку нажимая пробел, дальше жмем &quot;ok&quot;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4kCZZCVtBWlq3sRLFguBVFujZ2XMc7TBBivduAZDvozfSP-ynPEfzZZFVcVgxWIDk_WhfNtEpITfESDDGlUwa4tbFFiQwbnIxQgnZ8nSuwmk6ns9gqJIpMw9_OIAghyc0hc7TfJo741fn/s1600/burg_5.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;232&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4kCZZCVtBWlq3sRLFguBVFujZ2XMc7TBBivduAZDvozfSP-ynPEfzZZFVcVgxWIDk_WhfNtEpITfESDDGlUwa4tbFFiQwbnIxQgnZ8nSuwmk6ns9gqJIpMw9_OIAghyc0hc7TfJo741fn/s400/burg_5.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;Далее проверяем работу burg&#39;a:&lt;br /&gt;
sudo burg-emu -D&lt;br /&gt;
Если всё правильно сделано должно выйти следующее:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1Y5Rd_0Vy5pBoppEjyxDlHg04LfWkGVT_IVQOf0YIlWXPd7czPk_IlpKRhBMepEw7WipOB5c8jOYXxuUfnSvA9mmvuCFPRI0JhSVFZOgaadAbUgdXSPd-mJ22LGgUVgtPFMYaW68lF-Yq/s1600/burg04.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;317&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1Y5Rd_0Vy5pBoppEjyxDlHg04LfWkGVT_IVQOf0YIlWXPd7czPk_IlpKRhBMepEw7WipOB5c8jOYXxuUfnSvA9mmvuCFPRI0JhSVFZOgaadAbUgdXSPd-mJ22LGgUVgtPFMYaW68lF-Yq/s400/burg04.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Тут мы можем выбрать нужную нам темку &quot;F2&quot;. Чтобы &lt;b&gt;burg&lt;/b&gt; поставил нужную нам темку надо обязательно забускать его с &lt;b&gt;sudo&lt;/b&gt;!&lt;hr&gt;Но со старыми ядрами выглядит &quot;не очень&quot;, поэтому удалим их для этого командуем:&lt;br /&gt;
dpkg -l | grep linux-image&lt;br /&gt;
Терминал нам должен вывести список ядер, что то типо:&lt;br /&gt;
linux-image-2.6.32-21-generic        2.6.32-21.32                                    Linux kernel image for version 2.6.32 on x86&lt;br /&gt;
ii  linux-image-2.6.32-22-generic        2.6.32-22.36                                    Linux kernel image for version 2.6.32 on x86&lt;br /&gt;
ii  linux-image-2.6.32-23-generic        2.6.32-23.37                                    Linux kernel image for version 2.6.32 on x86&lt;br /&gt;
ii  linux-image-generic                  2.6.32.23.24 и т.д&lt;br /&gt;
Удалим ненужные командой:&lt;br /&gt;
sudo apt-get remove -f linux-image-2.6.32-21-generic linux-image-2.6.32-22-generic&lt;br /&gt;
то есть нам нужно удалить все кроме 2.6.32-23&lt;br /&gt;
Выполнив удаление старых ядер обновим &lt;b&gt;grub&lt;/b&gt;:&lt;br /&gt;
sudo update-grub&lt;br /&gt;
затем обновим конфигурацию &lt;b&gt;burg&lt;/b&gt;&lt;br /&gt;
sudo update-burg&lt;hr&gt;Теперь можно перезагрузиться и посмотреть на работу &lt;b&gt;burg&lt;/b&gt;&#39;a&lt;br /&gt;
1. Для смены темы жмем на клавишу &lt;b&gt;«t»&lt;/b&gt;&lt;br /&gt;
2. Для выбора разрешения экрана жмем &lt;b&gt;«r»&lt;/b&gt;&lt;br /&gt;
Темы лежат в директории &lt;b&gt;/boot/burg/themes/&lt;/b&gt;&lt;br /&gt;
При написании поста использовалась информация с &lt;a href=&quot;https://rdot.org/forum/showthread.php?t=257&quot; target=&quot;_blank&quot;&gt;https://rdot.org/forum/showthread.php?t=257&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/8322984515143881153/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/05/grub-burg.html#comment-form' title='Комментарии: 5'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/8322984515143881153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/8322984515143881153'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/05/grub-burg.html' title='Меняем скучный grub на burg'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe-1DllK3Qa3-1c9S6I8W0gFI36cof8A3dXuo4p_hyJ7FifmAuGjqZ_TRBv8LztTidkRbEt2xE4idN-dM0QGnIgCp-pFx-MMDXFjpRGISlbV-lfEaAVQzfGiKsLuLRAsIrPXzVVr1RtFd/s72-c/burg.png" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-635055402820746559.post-2477985089037312061</id><published>2011-05-11T03:44:00.000-07:00</published><updated>2011-05-11T03:44:35.263-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Релиз BackTrack 5</title><content type='html'>&lt;hr&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhW-IbLMEw2Dr7K7WPkw8-pf6M9yp58Za9eCjjfaLvb-X2WLARoPKZ4c6i4uMs5KUg74VLEMIU0zdaiXFznct-86FXscBZjjeQgffWf_qx81VPHBqH6X8I37rR3liGA2nvdUF3BAGJalpe/s1600/bt.png&quot; rel=&quot;nofollow&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;301&quot; width=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhW-IbLMEw2Dr7K7WPkw8-pf6M9yp58Za9eCjjfaLvb-X2WLARoPKZ4c6i4uMs5KUg74VLEMIU0zdaiXFznct-86FXscBZjjeQgffWf_qx81VPHBqH6X8I37rR3liGA2nvdUF3BAGJalpe/s400/bt.png&quot; title=&quot;BackTrack 5&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr&gt;Вчера [10.05.2011] вышел новый релиз бесплатного дистрибутива &lt;b&gt;ОС&lt;/b&gt; &lt;b&gt;BACKTRACK 5&lt;/b&gt;, в состав которого входит множество средств и утилит для специалистов по сетевой безопасности.&lt;br /&gt;
На момент выхода релиза администрация справилась с рядом сетевых &lt;b&gt;DOS атак&lt;/b&gt; основного сайта &lt;b&gt;backtrack-linux.org&lt;/b&gt;, которые были направлены на отсрочку релиза. Скачать можно сразу во вкладке &lt;b&gt;downloads&lt;/b&gt;  [http://www.backtrack-linux.org/downloads/] Можно зарегистрироваться и скачать или же просто скачать выбрав необходимый вариант для загрузки. Скачка доступна только по торрент файлу. Я бы хотел скачать и посмотреть на &lt;b&gt;BackTrack&lt;/b&gt;, но пока и &lt;b&gt;ubuntu&lt;/b&gt; хватает. В будущем надо будет её скачать и опробовать. Также вы можете &lt;a href=&quot;http://systemcolt.ru&quot; target=&quot;_blank&quot;&gt;Скачать и установить КЛАДР&lt;/a&gt;.</content><link rel='replies' type='application/atom+xml' href='http://nullflow.blogspot.com/feeds/2477985089037312061/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://nullflow.blogspot.com/2011/05/backtrack-5.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2477985089037312061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/635055402820746559/posts/default/2477985089037312061'/><link rel='alternate' type='text/html' href='http://nullflow.blogspot.com/2011/05/backtrack-5.html' title='Релиз BackTrack 5'/><author><name>NullFlow</name><uri>http://www.blogger.com/profile/15817549331278925580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVb3lGxumB5kYC0cUhNWJuKWj31pM3QFxerQ1ImG8bLTe2_XBo2u30ln9cIxifqN5BoRVIPw0Mibu-j0gUud4bHy65_Jt7mDzHMa-7xQZf8R1xTcKbD7Fu3sSEMKmuHA/s220/anonim.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhW-IbLMEw2Dr7K7WPkw8-pf6M9yp58Za9eCjjfaLvb-X2WLARoPKZ4c6i4uMs5KUg74VLEMIU0zdaiXFznct-86FXscBZjjeQgffWf_qx81VPHBqH6X8I37rR3liGA2nvdUF3BAGJalpe/s72-c/bt.png" height="72" width="72"/><thr:total>0</thr:total></entry></feed>