wtorek, 13 września 2011

Dzień programisty 2011


  1. Uruchamiamy Visual Studio

  2. Tworzymy nowy projekt "Console Application"

  3. Wklejamy poniższy tekst

    using System;
    using System.Text;

    namespace Quine2011
    {
    class Program
    {
    const string q = "dXNpbmcgU3lzdGVtOw0KdXNpbmcgU3lzdGVtLlRleHQ7DQoNCm5hbWVzcGFjZSBRdWluZTIwMTENCnsNCiAgICBjbGFzcyBQcm9ncmFtDQogICAgew0KICAgICAgICBjb25zdCBzdHJpbmcgcSA9ICIyNTYiOw0KICAgICAgICBzdGF0aWMgdm9pZCBNYWluKHN0cmluZ1tdIGFyZ3MpDQogICAgICAgIHsNCiAgICAgICAgICAgIGNvbnN0IHN0cmluZyB4MjU2ID0gIjI1NiI7DQogICAgICAgICAgICBzdHJpbmcgdiA9IEVuY29kaW5nLkRlZmF1bHQuR2V0U3RyaW5nKENvbnZlcnQuRnJvbUJhc2U2NFN0cmluZyhxKSk7DQogICAgICAgICAgICBpbnQgcCA9IHYuSW5kZXhPZih4MjU2KTsNCiAgICAgICAgICAgIENvbnNvbGUuV3JpdGUodi5TdWJzdHJpbmcoMCwgcCkgDQogICAgICAgICAgICAgICAgKyBxIA0KICAgICAgICAgICAgICAgICsgdi5TdWJzdHJpbmcocCArIHgyNTYuTGVuZ3RoKSk7DQogICAgICAgICAgICBDb25zb2xlLlJlYWRLZXkoKTsNCiAgICAgICAgfQ0KICAgIH0NCn0NCg==";
    static void Main(string[] args)
    {
    const string x256 = "256";
    string v = Encoding.Default.GetString(Convert.FromBase64String(q));
    int p = v.IndexOf(x256);
    Console.Write(v.Substring(0, p)
    + q
    + v.Substring(p + x256.Length));
    Console.ReadKey();
    }
    }
    }



  4. Kompilujemy i uruchamiamy

  5. Do zobaczenia za rok

czwartek, 19 maja 2011

dotPeek - nowy dekompilator dla .NET

Po tym jak okazało się, że Reflector nie będzie już dostępny w najprostszej wersji jako darmowe oprogramowanie, wielu programistów zaczęło prace nad odpowiednikiem. Pierwszym takim rozwiązaniem jest ILSpy, o którym niedawno pisałem.

Mimo tego ludzie z JetBrains (autorzy dodatku do Visual Studio - ReSharper) rozpoczęli prace nad swoją aplikacją.



Obecna wersja programu dostępna pod adresem:
http://www.jetbrains.com/decompiler/

Wersja ta jest jeszcze niestabilna. Gdy uruchamiałem pierwszy raz dotPeek, program zawiesił się po czym pojawiła się propozycja wysłania raportu o błędzie do autorów. Jest to normalne zachowanie programu, który znajduje się we wczesnym stadium tworzenia. Wygląd programu przypomina Visual Studio i zapewne dotPeek będzie elementem kolejnej wersji ReSharpera. Reszta opcji jest znana z Reflectora, może poza możliwością otwarcia modułów z GAC - w Reflectorze trzeba było najpierw znaleźć odpowiedni plik i dopiero go otworzyć, co nie zawsze było proste i wygodne.

Wczesna wersja dostępna jest w wersji darmowej (EAP -Early Access Program).

piątek, 18 lutego 2011

Żegnaj Reflector, witaj ILSpy

Jakiś czas temu firma Redgate, ogłosiła że przekazany im pod opiekę program Reflector przestanie być dostępny w wersji darmowej. Owszem równolegle sprzedawana była wersja Reflectora, która posiadała nieco więcej właściwości min. integrację z Visual Studio. Od lutego 2011 Reflector dostępny jest w cenie 35$.

Społeczność programistów nie czekała długo i odpowiedzią na tę sytuację jest projekt ILSpy. Na stronie projektu widoczne są już pierwsze screenshoty, dostępny jest kod źródłowy na Githubie.
Projekt nabiera rozpędu i w tym przypadku należy spodziewać się dobrego narzędzia, które będzie na bieżąco rozwijane.