<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nazgul&#039;s weblog &#187; Inne</title>
	<atom:link href="http://blog.nazgul.pl/categories/inne/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.nazgul.pl</link>
	<description>webdev, webdesign, apple…</description>
	<lastBuildDate>Wed, 04 Jan 2012 08:21:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Wesołych świąt :)</title>
		<link>http://blog.nazgul.pl/inne/wesolych-swiat/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wesolych-swiat</link>
		<comments>http://blog.nazgul.pl/inne/wesolych-swiat/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 19:44:15 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/?p=219</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.nazgul.pl/wp-content/uploads/2009/12/xmas1.jpg"><img src="http://blog.nazgul.pl/wp-content/uploads/2009/12/xmas1.jpg" alt="Życzenia" title="Życzenia" width="350" height="220" class="aligncenter size-full wp-image-220" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/wesolych-swiat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ściąganie blokady aplikacji w Windows Mobile</title>
		<link>http://blog.nazgul.pl/inne/sciaganie-blokady-aplikacji-w-windows-mobile/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sciaganie-blokady-aplikacji-w-windows-mobile</link>
		<comments>http://blog.nazgul.pl/inne/sciaganie-blokady-aplikacji-w-windows-mobile/#comments</comments>
		<pubDate>Wed, 16 Jul 2008 07:08:08 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/?p=47</guid>
		<description><![CDATA[Istnieje kilka metod, aby ściągnąć blokadę aplikacji z urządzeń pracujących pod kontrolą WM. Jednym z nich jest ściągnięcie paczki, zainstalowanie pliku cab na urządzeniu i odpalenie aplikacji na PC z ActiveSync/WMDC. Innym, według mnie lepszym, jest samodzielna modyfikacja rejestru. Jeśli nie mamy zainstalowanego żadnego edytora rejestru możemy ściągnąć wersję trial Resco Registry Add-In, lub skorzystać [...]]]></description>
			<content:encoded><![CDATA[<p>
Istnieje kilka metod, aby ściągnąć blokadę aplikacji z urządzeń pracujących pod kontrolą <abbr title="Windows Mobile">WM</abbr>.
</p>
<p>Jednym z nich jest ściągnięcie <a href="http://nazgul.pl/-/application_unlock.zip">paczki</a>, zainstalowanie pliku cab na urządzeniu i odpalenie aplikacji na PC z ActiveSync/WMDC.</p>
<p>Innym, według mnie lepszym, jest samodzielna modyfikacja rejestru.<br />
Jeśli nie mamy zainstalowanego żadnego edytora rejestru możemy ściągnąć wersję trial <a href="http://www.resco.net/smartphone/explorer/downloads.asp">Resco Registry Add-In</a>, lub skorzystać z narzędzia dołączanego do Visual Studio — Remote Registry Editor.
</p>
<p>
Wartości które nalezy zmodyfikować:<br />
HKLM\Security\Policies\Policies</p>
<ul>
<li>„00001001” = 1</li>
<li>„00001005” = 64</li>
<li>„00001007” = 144</li>
<li>„000010023” = 1</li>
<li>„0000101a” = 1</li>
<li>„0000101b” = 1</li>
</ul>
<p>Teraz wystarczy wykonać soft-reset i mamy ściągniętą blokadę.</p>
<p>A dla ambitnych podaję adres do <a href="http://forum.xda-developers.com/showthread.php?t=373319">postu na xda-developers.com</a>, z dokładnym opisem tych wartości.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/sciaganie-blokady-aplikacji-w-windows-mobile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hard reset w HTC Tornado</title>
		<link>http://blog.nazgul.pl/inne/hard-reset-w-htc-tornado/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hard-reset-w-htc-tornado</link>
		<comments>http://blog.nazgul.pl/inne/hard-reset-w-htc-tornado/#comments</comments>
		<pubDate>Fri, 11 Jul 2008 15:09:53 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/?p=46</guid>
		<description><![CDATA[Czasem muszę wykonać hard reset mojego telefonu, dlatego zamieszczam tu instrukcję, aby mieć do niej łatwy dostęp. Przy okazji może ktoś z niej skorzysta. Wyłącz telefon. Naciśnij jednocześnie oba softkey’e Wciśnij na około 2 sekundy przycisk właczania. Po wyświetleniu komunikatu naciśnij klawisz 0.]]></description>
			<content:encoded><![CDATA[<p>Czasem muszę wykonać hard reset mojego telefonu, dlatego zamieszczam tu instrukcję, aby mieć do niej łatwy dostęp. Przy okazji może ktoś z niej skorzysta.</p>
<ul>
<li>Wyłącz telefon.</li>
<li>Naciśnij jednocześnie oba softkey’e</li>
<li>Wciśnij na około 2 sekundy przycisk właczania.</li>
<li>Po wyświetleniu komunikatu naciśnij klawisz 0.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/hard-reset-w-htc-tornado/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zeroconf: Kod źródłowy</title>
		<link>http://blog.nazgul.pl/inne/zeroconf-kod-zrodlowy/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=zeroconf-kod-zrodlowy</link>
		<comments>http://blog.nazgul.pl/inne/zeroconf-kod-zrodlowy/#comments</comments>
		<pubDate>Tue, 20 May 2008 13:49:59 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/?p=42</guid>
		<description><![CDATA[Zamieszczam obiecany kod źrodłowy (: zeroconf.zip (1.7 kB) Kompiluje się pod VS 2008 Express. Pod Mono oraz innymi wersjami Visual Studio tez powinien.]]></description>
			<content:encoded><![CDATA[<p>Zamieszczam obiecany kod źrodłowy (:</p>
<p class="file"><a href="http://blog.nazgul.pl/wp-content/uploads/2008/05/zeroconf.zip" class="filename">zeroconf.zip</a> <small class="size">(1.7 kB)</small></p>
<p>Kompiluje się pod <abbr title="Visual Studio">VS</abbr> 2008 Express. Pod <a href="http://www.mono-project.com/">Mono</a> oraz innymi wersjami <a href="http://msdn.microsoft.com/en-us/vstudio/default.aspx">Visual Studio</a> tez powinien.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/zeroconf-kod-zrodlowy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zeroconf: Avahi, Bonjour</title>
		<link>http://blog.nazgul.pl/inne/zeroconf-avahi-bonjour/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=zeroconf-avahi-bonjour</link>
		<comments>http://blog.nazgul.pl/inne/zeroconf-avahi-bonjour/#comments</comments>
		<pubDate>Mon, 19 May 2008 07:28:32 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/?p=34</guid>
		<description><![CDATA[Co to jest zeroconf? Zeroconf, jak nazwa nam sugeruje, w założeniu umożliwia podłączanie urządzeń sieciowych bez potrzeby konfiguracji. Jednak można go użyć również w innych celach — pozwala on na rozgłaszanie usług dostępnych na poszczególnych komputerach w sieci. Najlepszym przykładem jest tu iTunes i jego protokół udostępniania muzyki (DAAP). Zeroconf (a właściwie implementacja Apple –Bonjour) [...]]]></description>
			<content:encoded><![CDATA[<h3>Co to jest zeroconf?</h3>
<p>
<a href="http://www.zeroconf.org/" title="zeroconf.org">Zeroconf</a>, jak nazwa nam sugeruje, w założeniu umożliwia podłączanie urządzeń sieciowych bez potrzeby konfiguracji. Jednak można go użyć również w innych celach — pozwala on na rozgłaszanie usług dostępnych na poszczególnych komputerach w sieci. Najlepszym przykładem jest tu iTunes i jego protokół udostępniania muzyki (DAAP). Zeroconf (a właściwie implementacja Apple –Bonjour) jest bardzo powszechny w Mac OS, służy np. do udostępniania drukarek, rozmów w sieci lokalnej etc.
</p>
<p>
Apple wydaje Bonjour pod Mac OS oraz Windows. Linux posiada własną implementację — Avahi (jest dostępny we większości dystrybucji out of the box). W systemach Microsoft istnieje również UPnP, ale nie przyglądałem się za bardzo temu rozwiązaniu.
</p>
<h3>Kiedy, gdzie i jak używać?</h3>
<p>
Najciekawszą możliwością jest dla mnie właśnie możliwość ogłaszania usług w sieci. Na przykład mając router wspierający Bonjour możemy wklikać się na stronę zarządzania, bądź podłączyć do niego drukarkę usb, która będzie widziana i obsługiwana bez problemów na jakimkolwiek systemie klienckim.</p>
<p>Ideą zeroconf jest aby użytkownik po podłączeniu do sieci mógł od razu korzystać z dostępnych w sieci usług. Lista możliwych do rozgłoszenia serwisów dostępna jest na <a href="http://www.dns-sd.org/ServiceTypes.html">stronie dns-sd</a></p>
<h3>A co z Windowsem?</h3>
<p>
W systemie z Redmond obsługa zeroconf na razie kuleje, jednak widać pewne zmiany. Photoshop CS3 korzysta z Bonjour do szukania serwerów <a href="http://en.wikipedia.org/wiki/VersionCue">VersionCue</a>, iTunes udostępnia w ten sposób muzykę, safari pokazuje listę serwerów www. Niektóre komunikatory (<a href="http://www.skype.com/">Skype</a>,<a href="http://www.pidgin.im/">Pidgin</a>) korzystają z Bonjour/Avahi umożliwiając komunikację IM w sieci.
</p>
<p>
Jednak przyzwyczaiłem się do prostego ogłaszania usług znanego z Avahi, gdzie korzysta się z plików <code>*.service</code> (więcej na blogu <a href="http://osx.jogger.pl/2007/04/11/avahi-jak-to-ugryzc/">osx.jogger.pl</a>). Dlatego napisałem prosty program w C#, korzystający z <a href="http://www.mono-project.com/Mono.Zeroconf">Mono.Zeroconf</a>, który umożliwia używanie plików o takiej samej składni jak w avahi. Za niedługo udostępnię źródło, tylko muszę trochę je poprawić.
</p>
<h3>Na koniec</h3>
<p>Polecam obejrzenie prezentacji (ponad godzinnej) nt. zeroconf: <a href="http://video.google.com/videoplay?docid=-7398680103951126462">http://video.google.com/videoplay?docid=-7398680103951126462</a><br />
oraz odwiedzenie stron: <a href="http://zeroconf.org/">zeroconf.org</a>, <a href="http://avahi.org/">avahi.org</a>, oraz <a href="http://www.apple.com/macosx/technology/bonjour.html">Apple Bonjour</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/zeroconf-avahi-bonjour/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Klasa logująca w C#</title>
		<link>http://blog.nazgul.pl/inne/klasa-logujaca-w-c/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=klasa-logujaca-w-c</link>
		<comments>http://blog.nazgul.pl/inne/klasa-logujaca-w-c/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 19:09:01 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/inne/klasa-logujaca-w-c/</guid>
		<description><![CDATA[Chciałem zaprezentować moją klasę ułatwiającą obsługę logowania w .NET, klasa ta napisana jest w c# jak sugeruje tytuł (: Kod umieszczam na licencji cc by using System; using System.Collections.Generic; using System.IO; namespace Nazgul.Helpers { //Enumeracja priorytetów public enum LogPriority{ Exception, Error, Normal, Log } public class Log { //Klasa przechowująca TextWriter oraz jego priorytet. protected [...]]]></description>
			<content:encoded><![CDATA[<p>Chciałem zaprezentować moją klasę ułatwiającą obsługę logowania w .NET, klasa ta napisana jest w c# jak sugeruje tytuł (:<br />
Kod umieszczam na licencji <a href="http://creativecommons.org/licenses/by/2.5/pl/">cc by</a></p>
<p><span id="more-38"></span></p>
<pre name="code" class="csharp">using System;
using System.Collections.Generic;
using System.IO;

namespace Nazgul.Helpers
{
    //Enumeracja priorytetów
    public enum LogPriority{
        Exception,
        Error,
        Normal,
        Log
    }

    public class Log
    {
        //Klasa przechowująca TextWriter oraz jego priorytet.
        protected sealed class LogStream
        {
            public TextWriter Out { get; set; }
            public LogPriority Priority { get; set; }
        }

        List&lt;logstream&gt; outs = new List&lt;logstream&gt;(5);      //Lista strumieni
        LogPriority currentPriority = LogPriority.Error;    //Bieżący priorytet
        static readonly Log instance = new Log();

        public static Log Instance
        {
            get{ return instance; }
        }

        //Konstruktory dla singletonu.
        static Log(){}
        Log() { }

        //Funkcja dodaje strumień do kolekcji
        public Log RegisterStream(Stream stream, LogPriority priority)
        {
            if (stream != null)
            {
                outs.AddRange(new LogStream[] { new LogStream() { Out = new StreamWriter(stream), Priority = priority } });
            }
            return this;
        }

        public Log RegisterStream(Stream stream)
        {
            this.RegisterStream(stream, LogPriority.Log);
        }

        public Log RegisterStream(TextWriter tw, LogPriority priority)
        {
            if (tw != null)
            {
                outs.AddRange(new LogStream[] { new LogStream() { Out = tw, Priority = priority } });
            }
            return this;
        }

        public Log RegisterStream(TextWriter tw)
        {
            this.RegisterStream(tw, LogPriority.Log);
        }

        public Log SetPriority(LogPriority prior)
        {
            this.currentPriority = prior;
            return this;
        }

        private void Write(string text)
        {
            foreach (LogStream ls in this.outs)
            {
                if (this.currentPriority >= ls.Priority)
                {
                    ls.Out.Write(text);
                    ls.Out.Flush();
                }
            }
        }

        public Log EndLine()
        {
            this.Write(Environment.NewLine);
            return this;
        }

        public Log Message(string text)
        {
            this.Write(text);
            return this;
        }

        public Log Message(Exception ext)
        {
            //Tutaj należy dodać kod w lepszy sposób opisujacy wyjatek.
            this.Write(ext.ToString());

            return this;
        }
    }
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/klasa-logujaca-w-c/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Na nowym</title>
		<link>http://blog.nazgul.pl/inne/na-nowym/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=na-nowym</link>
		<comments>http://blog.nazgul.pl/inne/na-nowym/#comments</comments>
		<pubDate>Fri, 29 Feb 2008 08:51:09 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://blog.nazgul.pl/info/na-nowym/</guid>
		<description><![CDATA[Domena i sam blog są już u nowego providera. Teraz blog powinien być dostępny przez cały czas, i wczytywać się szybciej (średni ping jest ponad 2x mniejszy) Przy okazji blog leży teraz pod subdomeną — blog.nazgul.pl, ale stary adres dalej jest aktualny (przekierowanie)]]></description>
			<content:encoded><![CDATA[<p>Domena i sam blog są już u nowego providera. Teraz blog powinien być dostępny przez cały czas, i wczytywać się szybciej (średni ping jest ponad 2x mniejszy)</p>
<p>Przy okazji blog leży teraz pod subdomeną — <a href="http://blog.nazgul.pl/">blog.nazgul.pl</a>, ale stary adres dalej jest aktualny (przekierowanie)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/na-nowym/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zmiany… ;)</title>
		<link>http://blog.nazgul.pl/inne/zmiany/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=zmiany</link>
		<comments>http://blog.nazgul.pl/inne/zmiany/#comments</comments>
		<pubDate>Tue, 22 Jan 2008 19:31:25 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://nazgul.pl/blog/inne/zmiany/</guid>
		<description><![CDATA[Po pierwsze dodałem plugin openID, który został przepisany i już nie sprawia problemów na DH. Przy okazji zmienię formularz, żeby był kompatybilny z openID, oraz poprawię wygląd komentarzy. (: Po drugie mam zamiar zmienić mojego rejestratora domeny (authinfo już w drodze), na cal.pl, słyszałem trochę pozytywnych opinii, a jest prawie 2 razy tańszy niż nazwa.pl, [...]]]></description>
			<content:encoded><![CDATA[<p>Po pierwsze dodałem <a href="http://netto.blox.pl/2008/01/openid-ozywia-sie-zima.html">plugin openID</a>, który został przepisany i już nie sprawia problemów na <a href="http://dreamhost.com">DH</a>. Przy okazji zmienię formularz, żeby był kompatybilny z openID, oraz poprawię wygląd komentarzy. (:</p>
<p>Po drugie mam zamiar zmienić mojego rejestratora domeny (authinfo już w drodze), na <a href="http://cal.pl">cal.pl</a>, słyszałem trochę pozytywnych opinii, a jest prawie 2 razy tańszy niż nazwa.pl, mam zamiar także zakupić tam serwer, teraz uzywam gościnnie serwera <a href="http://yashke.com">yashke.com</a>, także blog może być niedostępny przez jakiś (mam nadzieję krótki) czas.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/zmiany/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wesolych.…</title>
		<link>http://blog.nazgul.pl/inne/wesolych/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wesolych</link>
		<comments>http://blog.nazgul.pl/inne/wesolych/#comments</comments>
		<pubDate>Sun, 23 Dec 2007 20:37:43 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://nazgul.pl/blog/blog/wesolych/</guid>
		<description><![CDATA[Wesolych swiąt!]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;display:block">
<img style="border:1px solid #dfdfdf;padding:.2em;background:#fafafa" src='http://nazgul.pl/blog/wp-content/uploads/2007/12/merry.jpg' alt='Merry X-mas' />
</p>
<p><strong>Wesolych swiąt!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/wesolych/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aktualizacja HTC Tornado do Windows Mobile 6</title>
		<link>http://blog.nazgul.pl/inne/aktualizacja-htc-tornado-do-windows-mobile-6/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=aktualizacja-htc-tornado-do-windows-mobile-6</link>
		<comments>http://blog.nazgul.pl/inne/aktualizacja-htc-tornado-do-windows-mobile-6/#comments</comments>
		<pubDate>Fri, 26 Oct 2007 22:03:02 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://nazgul.pl/blog/windows-mobile/aktualizacja-htc-tornado-do-windows-mobile-6/</guid>
		<description><![CDATA[Jakiś czas temu zakupiłem sobie smartphone’a SPV c600, a niedługo potem ukazał się najnowszy system dla tego typu urządzeń, postanowiłem więc spróbować, szczególnie że oryginalnie posiadałem oprogramowanie Orange, które nie jest najlepszym wyborem. Porozglądałem się trochę po forach, a szczególnie xda-developers.com, i wybrałem odpowiedni dla mnie ROM (HTC Vanilla Edition). Cały proces przebiega dość szybko, [...]]]></description>
			<content:encoded><![CDATA[<p>Jakiś czas temu zakupiłem sobie smartphone’a SPV c600, a niedługo potem ukazał się najnowszy system dla tego typu urządzeń, postanowiłem więc spróbować, szczególnie że oryginalnie posiadałem oprogramowanie Orange, które nie jest najlepszym wyborem.</p>
<p>Porozglądałem się trochę po forach, a szczególnie <a href="http://xda-developers.com">xda-developers.com</a>, i wybrałem odpowiedni dla mnie ROM (<a href="http://forum.xda-developers.com/showthread.php?t=337380">HTC Vanilla Edition</a>). Cały proces przebiega dość szybko, i nie jest zbyt skomplikowany. Zaczynajmy!</p>
<h2>Przygotowania</h2>
<p>Aby zaktualizować nasz software potrzebujemy:</p>
<ul>
<li>Po pierwsze telefonu, najlepiej z naładowaną baterią.</li>
<li>Komputera z windowsem an pokładzie i zainstalowanym ActiveSyncem.</li>
<li>Narzędzi odblokowujących telefon: <a href="http://nazgul.pl/-/tornado/SDA_ApplicationUnlock.zip">SdaApplicationUnlock</a> i <a href="http://nazgul.pl/-/tornado/SPV-Services.zip">SPV-Services</a></li>
<li>Pliku z aktualizacją GSM — <a href="http://rapidshare.com/files/50384600/WM6GSMUPDATE.zip">http://rapidshare.com/files/50384600/WM6GSMUPDATE.zip</a></li>
<li>Pliku z obrazem — można go ściągnąć <a href="http://forum.xda-developers.com/forumdisplay.php?f=285">z któregoś z postów <ins>(Możesz także ściągnac <a href="http://forum.xda-developers.com/showthread.php?t=375670">WM 6.1</a>, aktualizuje się go dokłądnie tak samo.)</ins>.</a></li>
<li>Programu <a href="http://nazgul.pl/-/tornado/TeraTermPro.zip">teraterm</a>.</li>
<li></li>
</ul>
<p>
</p>
<h2>Aktualizacja telefonu</h2>
<p>
Połączamy telefon z ActiveSyncem za pomocą kabla (bluetooth nie wchodzi w grę) i uruchamiamy SDApplicationUnlock, klikamy „Remove Lock” i resetujemy telefon.<br />
Następnie kopiujemy i instalujemy na telefonie Cert.cab z archiwum SPV-Services, po czym uruchamiamy aplikację z tegoż archiwum, klikamy „CID Tool”, a następnie „SET CID”.<br />
Gdy operacja przebiegnie pomyślnie wyłączamy telefon i blokujemy w ustawieniach ActiveSynca połączenia za pomocą kabla (File-&gt;Connection Settings-&gt;Allow USB Connections).<br />
Wchodzimy w tryb bootloadera trzymając przycisk aparatu i wsadzając podłączony kabel do gniazda miniUSB, pokaże się ekran z trzema kolorowymi paskami i napisem „USB” na dole.<br />
Odpalamy TeraTerm i wpisujemy po kolei komendy (bez cudzysłowów): „info 2″ (sprawdzamy czy w wyniku jest fraza „HTCSSuperCID”, jeśli tak można przejść dalej), „format BINFS” i na koniec ResetDevice.<br />
Czekamy aż telefon się uruchomi ponownie (znowu pokażą się kolorowe paski). teraz uruchamiamy RomUpgradeUtility z paczki WM6GSMUpdate, zaznaczamy „I understood…”, kilkamy next, zaznaczamy „I completed”, znowu next i czekamy aż GSM zostanie zaktualizowany (telefon znowu uruchomi się ponownie).<br />
Następnie powtarzamy procedurę ale z plikami z paczki wybranego romu. Po zakończeniu procesu (kilka minut), jeśli wszystko poszło zgodnie z planem, pokaże nam się nowiutki Windows Mobile 6. Gratuluję!<br />
Jeśli chcesz mieć w telefonie T9 ściągnij i zainstaluj <a href="http://melgurth.ovh.org/index.php?page=downloads">odpowiedni plik</a>. Możesz także przejrzeć oprogramowanie zawarte w <a href="http://rapidshare.com/files/50531264/Extras.zip">Extras.zip</a>, ja ze swojej strony polecam HTC Audio Manager, jak dla mnie jest to idealny i prosty odtwarzacz muzyki dla smartphonów.
</p>
<p>
Wpis jest w dużym stopniu tłumaczeniem tutoriala: http://karhoe.byethost33.com/index.php?option=com_content&amp;task=view&amp;id=21
</p>
<p><strong>Ostatnio próbuję uruchomić synchronizację telefonu na Ubuntu, jeśli mi się uda, podzielę się z wami ta informacją ;)</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/aktualizacja-htc-tornado-do-windows-mobile-6/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Awaria…</title>
		<link>http://blog.nazgul.pl/inne/awaria/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=awaria</link>
		<comments>http://blog.nazgul.pl/inne/awaria/#comments</comments>
		<pubDate>Fri, 28 Sep 2007 12:20:58 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://nazgul.pl/blog/uncategorized/awaria/</guid>
		<description><![CDATA[Kilka dni temu nawaliła mi baza danych, niestety jedyna kopia jaką miałem była z początku czerwca, zginął jeden post i dwa komentarze. Zainstalowałem sobie wtyczkę automatycznie backupującą bazę, mam nadzieję, że w przyszłości już nie będę miał takich problemów. Teraz coś radośniejszego. W najbliższym czasie możecie spodziewać się kontynuacji serii o mikroformatach, bo zamierzam wreszcie [...]]]></description>
			<content:encoded><![CDATA[<p>Kilka dni temu nawaliła mi baza danych, niestety jedyna kopia jaką miałem była z początku czerwca, zginął jeden post i dwa komentarze. Zainstalowałem sobie wtyczkę automatycznie backupującą bazę, mam nadzieję, że w przyszłości już nie będę miał takich problemów.
</p>
<p>
Teraz coś radośniejszego. W najbliższym czasie możecie spodziewać się kontynuacji serii o <a href="http://nazgul.pl/blog/category/microformats/" title="Mikroformaty :: Nazgul's Weblog">mikroformatach</a>, bo zamierzam wreszcie skończyć posty leżące na dysku ;)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/awaria/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mechanizm cachowania w RoR</title>
		<link>http://blog.nazgul.pl/inne/mechanizm-cachowania-w-ror/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mechanizm-cachowania-w-ror</link>
		<comments>http://blog.nazgul.pl/inne/mechanizm-cachowania-w-ror/#comments</comments>
		<pubDate>Sat, 24 Mar 2007 18:15:29 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://nazgul.pl/blog/webdev/mechanizm-cachowania-w-ror/</guid>
		<description><![CDATA[Cache w Ruby on Rails Czasami tworząc aplikacje internetowe, wymagające dużej wydajności, okazuje się, że wykonywanie jakiegoś kodu od nowa dla każdego odwiedzającego jest nieekonomiczne. Można temu zaradzić umieszczając taki kod w cache (pliku, pamięci ram, bazie danych). W RoR istnieją trzy tryby buforowania zawartości: Buforowanie całej strony — page cachcing Buforowanie akcji — action [...]]]></description>
			<content:encoded><![CDATA[<h3>Cache w Ruby on Rails</h3>
<p>
Czasami tworząc aplikacje internetowe, wymagające dużej wydajności, okazuje się, że wykonywanie jakiegoś kodu od nowa dla każdego odwiedzającego jest nieekonomiczne. Można temu zaradzić umieszczając taki kod w cache (pliku, pamięci ram, bazie danych).
</p>
<p>
W RoR istnieją trzy tryby buforowania zawartości:</p>
<ol>
<li>Buforowanie całej strony — page cachcing</li>
<li>Buforowanie akcji — action caching</li>
<li>Buforowanie fragmentów — fragments caching</li>
</ol>
<p><span id="more-13"></span></p>
<h3>Page caching</h3>
<p>
Buforowanie strony polega na dodaniu do swojego kontrolera filtra <code>caches_page</code>, w najprostszym wypadku wygląda to tak:</p>
<pre lang="ruby">class MainController < ApplicationController
  caches_page :index, :about
end</pre>
<p>Strony index i about zostaną umieszczone w buforze, i z tamtąd będą serwowane użytkownikom.<br />
Tam metoda jest bardzo prosta, lecz jeśli masz na niej jakieś elementy np. zależne od użytkownika, to niestety musisz z niej zrezygnować.</pre>
</p>
<h3>Action caching</h3>
<p>
Ta metoda keszowania, nie różni sie znacząco od poprzedniej. Do bufora ładowany jest wynik przetwarzania akcji, a szablon jest przetwarzany za każdym razem, więc możemy serwować treść cachowaną i dynamiczną na raz.</p>
<p>
<pre lang="ruby">caches_action :akcja1, :akcja2</pre>
</p>
<h3>Fragment caching</h3>
<p>Jeśli nasza aplikacja używa nie tylko contentu bazującego na URLach (np. związanego z sesjami), musimy użyć trzeciego sposobu buforowania danych. Ten sposób ma jedną zaletę — jest bardzo elastyczny, możemy precyzyjnie zaznaczyć co chcemy buforować, a czego nie, za pomocą znaczników szablonów:</p>
<pre lang="ruby"># non-buffered content
< % cache( :action => 'show_post',:id => @post_id) do %>
       # buffered content
< % end %>
# non-buffered content</pre>
<p>Tak informujemy framework, że wersja skeszowana jest już niepotrzebna (dotyczy wszystkich trybów cachcingu):</p>
<pre lang="ruby">expire_page :controller => 'blog', :action => 'show_post', :id => post_id</pre>
</p>
<h3>Sweeper</h3>
<p>
Sweeper jest to kod, odpowiedzialny za automatyczne czyszczenie bufora. </p>
<pre lang="ruby">class BlogSweeper < ActionController::Caching::Sweeper #klasa sweepera
  observe Blog #Będziemy obserwować kontroler Blog

  #jeśli stworzymy posta, usuń cache
  def after_create(post)
          expire_cache_for(post)
  end

  # jeśli zmodyfikujemy posta, usuń cache
  def after_update(post)
          expire_cache_for(post)
  end

  # ... i to samo jeśli usuniemy
  def after_destroy(post)
          expire_cache_for(post)
  end

  private
  def expire_cache_for(record)
    expire_page(:controller => 'blog', :action => 'show_post', :id => record.id)
    expire_page(:controller => 'blog', :action => 'show_posts')
  end
end</pre>
<p>I teraz aby używać naszej klasy dodamy filtr:</p>
<pre lang="ruby">cache_sweeper :blog_sweeper, :only => [:create, :update, :destroy]</pre>
</p>
<h3>Na koniec</h3>
<p>Po więcej informacji odsyłam do dokumentacji RoR: <a href="http://ap.rubyonrails.com/classes/ActionController/Caching/Fragments.html" title="Buforowanie fragmentów">fragment caching</a>, <a href="http://ap.rubyonrails.com/classes/ActionController/Caching/Actions.html" title="Buforowanie akcji">action caching</a>, <a href="http://ap.rubyonrails.com/classes/ActionController/Caching/Pages.html" title="Buforowanie stron">page caching</a>, <a href="http://ap.rubyonrails.com/classes/ActionController/Caching/Sweeping.html" title="Sweeping">sweeping</a></p>
<p>Polecam jeszce przejrzenie tego postu, który pokazuje inne podejscie do buforowania w Rubym: <a href="http://jarmark.org/post/wygodny-cache/">Jarmark.org — Wygodny Cache</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/mechanizm-cachowania-w-ror/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nazgul’s Weblog Rebirth</title>
		<link>http://blog.nazgul.pl/inne/nazguls-weblog-rebirth/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nazguls-weblog-rebirth</link>
		<comments>http://blog.nazgul.pl/inne/nazguls-weblog-rebirth/#comments</comments>
		<pubDate>Tue, 13 Mar 2007 20:03:02 +0000</pubDate>
		<dc:creator>Nazgul</dc:creator>
				<category><![CDATA[Inne]]></category>

		<guid isPermaLink="false">http://nazgul.pl/~blog/info/nazguls-weblog-rebirth/</guid>
		<description><![CDATA[Powróciłem, pod nową domeną i zasilany wordpressem. Mój poprzedni blog oficjalnie zamykam, choć od dłuższego czasu już tam nic nie pisałem. Będe tu zamieszczał notki głównie o tematyce związanej z projektowaniem i tworzeniem zgodnych ze standardami stron internetowych, oraz programowaniem aplikacji internetowych. Ostatnio zafascynowany jestem RoR, więc, mam nadzieję, dość sporo wpisów będzie poświęconych temu [...]]]></description>
			<content:encoded><![CDATA[<p>Powróciłem, pod nową domeną i zasilany wordpressem.</p>
<p><a href="http://nazgul06.jogger.pl/" title="Mój poprzedni blog">Mój poprzedni blog</a> oficjalnie zamykam, choć od dłuższego czasu już tam nic nie pisałem.</p>
<p>Będe tu zamieszczał notki głównie o tematyce związanej z projektowaniem i tworzeniem zgodnych ze standardami stron internetowych, oraz programowaniem aplikacji internetowych. Ostatnio zafascynowany jestem <a href="http://www.rubyonrails.org/" title="Ruby on Rails">RoR</a>, więc, mam nadzieję, dość sporo wpisów będzie poświęconych temu frameworkowi.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nazgul.pl/inne/nazguls-weblog-rebirth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced

Served from: blog.nazgul.pl @ 2012-02-06 10:45:28 -->
