Profil de JurajYuraj's BlogPhotosBlogListesPlus Outils Aide

Blog


31 octobre

Pauza v C#

/// <summary>
/// Pause execution for given time (ms).
/// It doesn't freeze GUI.
/// </summary>
/// <param name="ms">Milliseconds.</param>
public static void Pause(int ms)
{
    int startTick = Environment.TickCount;
    while (true)
    {
        if ((Environment.TickCount - startTick) >= ms)
            break;

        //Refresh Application
        Application.DoEvents();
    }
}
10 octobre

Lua skriptovací engine.

Lua je jednoduchý skriptovací jazyk, ktorý sa používa najmä na rozširovanie aplikácií. LuaInterface je .net rozhranie pre lua.Vytvoril som aplikáciu, ktorá využíva Lua a LuaInterface. Taktiež som vytvoril vlastný zvýrazňovač syntaxe (založ. na richtextboxe).
Projek stiahnete tu:


18 septembre

Ukážka použitia FindAll v List<T>

Metóda FindAll slúži na vyhľadanie reťazcov podľa danej podmienky. Použil som lambda výraz na skrátenie zápisu. Výraz vo FindAll musí vrátiť true/false:

//Vytvor List<string>
List<string> zoznam = new List<string>() { "červená","čierna","modrá","biela","oranžová" };
//Hladaj vsetky polozky, ktore zacinaju s pismenom č
List<string> najdenePolozky = zoznam.FindAll(s => s.StartsWith("č"));
//Prejdi vsetky najdene polozky a vypis ich
foreach (string polozka in najdenePolozky)
{
Console.WriteLine(polozka);
}
25 août

Náhodná veľkosť znakov v C#

public class RandomHelper
{
    private static Random random = new Random();

    /// <summary>
    /// Random boolean.
    /// </summary>
    /// <returns>Returns True or False.</returns>
    public static bool RandomBool()
    {
        return (random.NextDouble() > 0.5);
    }

    /// <summary>
    /// Randomize (capital or small) string letters.
    /// </summary>
    /// <param name="text">Input Text.</param>
    /// <returns>Output randomized string.</returns>
    public static string RandomizeLetters(string text)
    {
        StringBuilder builder = new StringBuilder();

        int num = 0;
        do
        {
            if (RandomBool())
                builder.Append(char.ToLowerInvariant(text[num]));
            else
                builder.Append(char.ToUpperInvariant(text[num]));

            num++;
        }
        while (num < text.Length);

        return builder.ToString();
    }
}
5 août

Visual C# Express 2008 – Tutoriál pre začiatočníka

Krátky video-tutoriál (flash) pre úplneho začiatočníka vo VC# Express. Po rozbalení musíte spustiť súbor vs08.htm.

13 mai

6. Vytvárame jednoduché GUI (okno) v AutoIt-e

Teraz si ukážeme ako jednoducho sa dá vytvoriť okno v AutoIt-e. Existuje mnoho už predefinovaných funkcií na vytváranie najbežnejších ovládacích prvkov. Síce existujú rôzne designeri okien (vôbec najznámejší Koda Form Designer, ukážka , existuje doň aj čeština), ktoré vám automatický vygenerujú kód.

jednoduche_okno

Tu je kód (+podrobne okomentovaný):


  1. ; Zahrn subor, jeden zo zaklad. pri praci s GUI,
  2. ; obsahuje konstanty ako napr. $GUI_EVENT_CLOSE ....
  3. #include <GUIConstants.au3>
  4.  
  5. GUICreate("Ahoj svet!",350,300) ; Vytvor okno s titulkom "Ahoj svet!" a s velkostou 350x300
  6. $tlacidlo1 = GUICtrlCreateButton("Klik!",120,130,100) ; Vytvori tlacidlo s titulkom, potom X a Y pozicia a sirka...
  7. $vstup1 = GUICtrlCreateInput("Blaaa",100,100,150,20) ; Vytvori pole pre vstup textu,Predvoleny text,X,Y,sirka,vyska
  8. GUISetState() ; Zobraz okno, automaticky pouzije @SW_SHOW makro
  9.  
  10. ; Slucka, v ktorej sa bude udrziavat tok programu,
  11. ; cize ak by tu nebola slucka, tak by sa ihned okno zatvorilo
  12.     ; Odchyt spravy/udalosi okna
  13.     $msg = GUIGetMsg() ; Taktiez sposobi, ze program nezamrza v slucke
  14.     Switch $msg
  15.         Case $GUI_EVENT_CLOSE  ; Udalost, ked okno uzivatel zatvara
  16.             Exit ; Jednoducho ukonc program
  17.         Case $tlacidlo1 ; Udalost, ked sa stlaci tlacidlo1
  18.             $text = GUICtrlRead($vstup1) ; Nacita data/stav ovlad. prvku, v nasom pripade text upravovacieho pola
  19.             MsgBox(64,"Ahoj svet!","Stla&#269;il si tla&#269;idlo!" & @LF & "A zadal si ešte k tomu: " & $text)
  20.     EndSwitch

5. Niektoré funkcie v AutoIt-e

  1. ; Zisti aktualny text v schranke
  2. $schranka = ClipGet()
  3. MsgBox(0, "Schránka obsahuje:", $schranka)
  4.  
  5. ; Zapise text do schranky
  6. ClipPut("Nejaky ten text..")
  7. ; Opet vypise aktualny obsah schranky, obsah = vid. vyssie
  8. MsgBox(0, "Schránka obsahuje:", ClipGet())

  1. ; Zisti informacie o pameti, vrati vo forme pola:
  2. ; Jednotlive indexi:
  3. ;[0] = V % vyuzitie pamete
  4. ;[1] = Celkovo fyzickej RAM
  5. ;[2] = K dispozicii fyz. RAM
  6. ;[3] = Celkovo strankovanie
  7. ;[4] = K dispozicii strankovanie
  8. ;[5] = Celkovo virtualna
  9. ;[6] = K dispozicii virtualna
  10. ; Velkosti su v kilobytoch
  11.  
  12. $mem = MemGetStats()
  13. MsgBox(0, "Celkovo fyzickej RAM (KB):", $mem[1])

  1. ; Zo sys. repracika vyda zvuk
  2. ; Taktiez moznost nastavit [ Frekvenciu[, Trvanie(ms)]]
  3. ; Zvuk frekvencie 500Hz dlzky 2 sekund
  4. Beep(500, 2000)

  1. ; Prehra zvukovy subor: "subor" [, pockat(0 - pokracovat v skripte, ked sa prehrava,1 - pockat pokym sa pesnicka neprehra)]
  2. ; Ak sa nachadza vo Windows priecinku Media zvuk tada.wav, tak ho prehra
  3. SoundPlay(@WindowsDir & "\media\tada.wav",1)
  4. ; Ak date prazdny parameter za subor, tak vlastne zastavite prehravanu pesnicku
  5. ; Zmena hlasitosti wave v systeme (v %, cislo medzi 0 - 100)
  6. SoundSetWaveVolume(50) ; Napriklad na 50%
  7.  

  1. ; Simuluje stlacenie klavies do aktualneho okna:  "klavesy" [, typ]
  2. ; Tabulku klavies najdete v navode
  3. ; Win+R = dialog spustit
  4. Send("#r")
  5. ; Zopar klavies:
  6. ; # = klavesa 'Windows'
  7. ; ! - Klavesa Alt
  8. ; + - Klavesa Shift
  9. ; ^ - Klavesa Ctrl
  10. ; {SPACE} - Medzernik
  11. ; {ENTER} - Enter
  12. ; Poznamka: Mozete samozrejme posielat aj text, nielen specialne klavesy...
  13.  
  14. ; Nastavenie glob. klavesovej skratky, ktora zavola urcitu funkciu: "klavesy-rovnaky format ako send" [, "funkcia"]
  15. HotKeySet("{ESC}","Ukoncit")
  16.  
  17. Func Ukoncit()
  18.   Exit ; ukonci program

  1. ; Pauzne skript na urcitu dobu v milisekundach:
  2. Sleep(5000) ; Na 5 sekund
  3.  
  4. ; Zobrazi spravu: typ, "titulok", "text" [, timeout [, hwnd]]
  5. ; Vrati ID stlaceneho gombika (OK = 1,Zrusit = 2 ... viac info v navode)
  6. ; Typ: IKONKY 0 - ziadna ikonka, 16 - ikonka chyba, 32 - ikonka otazka, 48 - ikonka upozornenie, 64 - ikonka info
  7. ; GOMBIKY: 0 - OK, 1 - Ok a Zrusit atd...
  8. MsgBox(0,"Nieco","Toto je sprava!")
  9. ; Zlozitejsia sprava (48 - ikonka s vykricnikom + gombiky Ano a nie)
  10. $hodnota = MsgBox(48 + 4,"Dokument","Chcete ulozit tento subor?")
  11. If $hodnota == 6 Then
  12.  ; Ak stlacil gombik ANO
  13.  ; Ak stlacil gombik NIE
  14.  
  15. ; Zobrazi okno, ktore ziada uzivatela zadanie urcitej hodnoty: "titulok", "text poziadavky" [, "predvolena hodnota" [, "znak hesla" [, sirka, vyska[, x, y[, timeOut [, hwnd]]]]]]
  16. $odpoved = InputBox("Titulok","Ako sa volas?")
  17. If Not @error Then ; Kontrola ci nenastala chyba (cize ked napr. stlacil zrusit alebo nic nezadal)
  18.  MsgBox(0,"Meno","Ahoj " & $odpoved & "!")
  19.  MsgBox(0,"Meno","Skoda...") ; ak uzivatel nezadal nic
  20.  

Toto je len veľmi málo funkcíí z AutoIt-u. Viac nájdete v návode…

18 avril

4. Makrá a funkcie v AutoIt-e

AutoIt ma niekoľko makier, ktoré sú špeciálne premenné len na čítanie (hodnôt). Makro začína znakom @ namiesto $ pre lepšie odlíšenie.

Zoznam všetkých predefinovaných makier, ktoré podporuje AutoIt nájdete v návode, tu je zopár :

@AutoItExe – úplna cesta a názov exe z ktorého je skript spúšťaný.
@AutoItVersion – verzia AutoIt-u.
@ComputerName – názov počítača.
@UserName – meno prihláseného užívateľa OS.
@CR – znak návratu vozíka, občas používane, ascii 13.
@LF – posun riadka (nový riadok), často používané, znak ascii 10
@CRLF – nový riadok, znaky ascii 13 a 10.
@DesktopHeight – výška obrazovky.
@DesktopWidth – šírka obrazovky.
@error – posledná chyba, kt. nastala (pozri funkciu SetError v návode).
@extended – rozšírená návratová hodnota funkcie.

a mnoho iných užitočných makier…

Napríklad:

  1. MsgBox(0,"Vitaj!","Ahoj " & @UserName & "!" & @LF & "Ako sa mas?")

Takže zobrazí správu a pozdraví aktuálne prihláseného užívateľa systému.

makra_1

Poznámka: Ako som už v minule spomínal, & (and) slúži na spájanie reťazcov.

Funkcie

Funkcia je to časť kódu, ktorá môže byť volaná zo skriptu hocikedy a vykonáva určitú “funkciu”. AutoIt má vlastné vstavané funkcie a samozrejme, že môžete vytvárať aj vlastné funkcie. Zoznam AutoIt funkcií je v návode.
Funkcia sa vykonáva nasledovne: NazovFunkcie(parametre) . Nie vždy parametre musí mať funkcia. Taktiež nie každá funkcia musí niečo vracať.

Vlastné funkcie

Func nazovfunkcie ($parameter1, … $parameterN)
    ...
    [Return [navratova hodnota]]
EndFunc

Napríklad:

  1. MsgBox(0,"Datum",Dnes())
  2.  
  3. ; Vrati dnesni datum
  4. Func Dnes()
  5.     Return (@MON & "/" & @MDAY & "/" & @YEAR)

Toto je úplne to isté, ak by sme návratovú hodnotu funkcie uložili do premennej:
$datum = Dnes()
MsgBox(0,"Datum",$datum)

#include

Slúži na pripojenie ďalšieho súbora (au3) k skriptu. Najlepšie je dávať #include na začiatok skriptu.

#include "[cesta\]názovSúbora" – pripojí súbor, napr. #include “moje_funkcie.au3”
#include <názovSúbora> – pripojí súbor defaultnej knižnice, napr. #include <string.au3>
#include-once – pripojí súbor len jeden krát

3. Podmienkové príkazy a cyklusy v AutoIt-e

Ako napríklad zistím, že jedno číslo je väčšie ako druhé? Alebo, obsahuje reťazec danú hodnotu? Podmienky sú vyhodnocované buď true (pravda;1) alebo false (nepravda;0). Podmienky používajú tieto operátory na porovnávanie: == , <> , >=, <=.

3 typy podmienk. príkazoch (najčastejšie používaný je If):

  • If...Then...Else
  • Switch...Case
  • Select...Case

If … Then … [Else] … EndIf

Príklad:

  1. $cislo = 10
  2. If $cislo > 5 Then
  3.     MsgBox(0,"Porovnavanie","Cislo je vacsie ako 5!")
  4.     MsgBox(0,"Porovnavanie","Cislo je mensie ako 5!")

V ľudskej reči by to znamenalo:
Ak číslo 10 je väčšie ako 5 Potom zobraz správu “Cislo je vacsie ako 5!Inak zobraz správu “Cislo je mensie ako 5! Koniec podmienky
V našom prípade podmienku vyhodnotilo ako true, pretože číslo je väčšie ako 5. Preto spracovalo prvý príkaz, inak ak by číslo bolo menšie ako 5, tak by spracovalo príkazy za else.

Pozn.: Else nie je nevyhnutné, môžete ho vynechať.

Existuje aj skrateny zapis, ale iba pre jeden prikaz: If nieco Then prikaz

Switch … Case … [Case Else] … EndSwitch

Podobné ako viacnásobné if. Switch premenna .. case hodnotaN … EndSwitch. To zahŕňa nejakú hodnotu od (To) do.

Switch <logický výraz>
Case <hodnota> [To <hodnota>] [,<hodnota> [To <hodnota>] ...]
príkazy1
        ...
    [Case <hodnota> [To <hodnota>] [,<hodnota> [To <hodnota>] ...]
príkazy2
        ...]
    [Case Else
príkazyN
        ...]
EndSwitch

 

  1. $cislo = 5
  2. Switch $cislo
  3.     $sprava = "Cislo je 5"
  4. Case 10
  5.     $sprava = "Cislo je 10"
  6.     $sprava = "Cislo je ine ako 5 a 10."
  7.        
  8. MsgBox(0, "", $sprava)

Cyklusy

Cyklus je to slučka, v ktorej sa časť skriptu opakuje podľa uvedenej podmienky.

  • For...Next
  • While...WEnd
  • Do...Until
  • With...Endwith
  • For...In...Next

For...Next

Takto sa zapisuje, Step je voliteľné (defaultne je 1) je to vlastne hodnota, ktorou má byť každá slučka zväčšená.

For <premenna> = <od> To <do> [Step <krok>]
    ...
Next

 

  1. ; Zobrazi postupne cisla od 1 do 5
  2. For $i = 1 to 5
  3.     MsgBox(0, "Slucka", $i)

While … WEnd

Slučka pokračuje dovtedy, kým výraz nevráti logickú hodnotu false.

While <logický výraz>
    ...
WEnd

  1. $i = 1
  2. While $i <= 10
  3.     MsgBox(0, "Aktuálna hodnota:", $i)
  4.     $i += 1

Poznámka: $i += 1 to je vlastne skrátený zápis: $i = $i + 1
Taktiež existujú tieto skrátené zápisy aj pre iné operátor: –= ; *= ; /= ; &=

Do … Until

Podobné ako While … WEnd akurát, že logický výraz je testovaný po vykonaný slučky.

Do
    ...
Until <logický výraz>

17 avril

2. Premenné v AutoIt-e

Premenné v AutoIt-e sú dosť podobné s php. Každá premenná musí začínať dolárovým znakom $. Názov premennej môže obsahovať len písmená a čísla alebo znak “_”. AutoIt automatický priradí typ premennej podľa priradenia :) . Premenná je to vlastne miesto na ukladanie dát v pamäti, takže môže byť pristupovaná rýchlo.

Príklady názvoch premenných

$premenna
$moja_premenna
$nieco1

Varianty premenných v AutoIt-e:

  • Číslo (32/64 bitové; decimálne; desatinné; hexadecimálne), napr. 10 ; 1.5 ; 0x4fff
  • Reťazec (String; max. môže obsahovať 2147483647 znakov), napr. “Toto je retazec”, alebo môžete použiť aj apostrofy ‘Sem niečo…’ . Reťazce sa spájajú znakom and &. Napr. “Ahoj ” & “svet!” a to je rovné “Ahoj svet!”.
  • Boolean (logická hodnota), môže obsahovať len true (pravda alebo 1) alebo false (nepravda alebo 0). Spolu s booleanmi sa používajú tieto operátory: and, or, not. Not – neguje logickú hodnotu. And – ak obidva logické hodnoty sa rovanjú, tak vráti true. Or – ak jedna z log. hodnôt sa rovná, tak vráti true.
  • Binárna hodnota (max. 2147483647 bytov)
  • Ukazovateľ (Pointer; 32/64 bitové)

Deklarovanie premenných

Premenné môžu mať deklarovaný obor platnosti, rozlišujeme tieto: Dim, Local, Global. Nie je nutný. Dim, local – lokálny obor platnosti, napr. vo funkcií. Global – globálny, napr. vo viacerých súboroch. Ak chcete zabezpečiť, aby ste v kóde zakázali vytvárať premenné bez deklarovania - na začiatku kódu vložte: Opt(“MustDeclareVars”,1)

Príklady:

Dim $premenna
Dim $premenna2 = “Priradená hodnota”
Local $premenna3 = 99
Dim $x,$y
$text = “Bez deklárovania…”
$z = 25

Existujú aj konštanty, to sú premenné, ktorých hodnota sa za behu skriptu nedá meniť. Proste raz, keď sú zadefinované, potom už nemôžu byť menené. Používate sa kľúčové slovo Const

Napríklad:

Const $PI = 3.14 ; Ludolfovo cislo

Polia

Pole obsahuje rád dátových prvkov rovnakého typu a veľkosti (alebo inak povedané rád premenných). Každý prvok v poli môže byť pristupovaný indexom (číslom). Index vždy začína od nuly.

Napríklad:

; Vytvoríme pole
$pole[0] = “a”
$pole[1] = “h”
$pole[2] = “o”
$pole[3] = “j”
; Teraz pristúpime napríklad k druhému prvku (od nuly!)
$pismenko = $pole[1] ; do premennej $pismenko bude uložené “h”.

Poznámka: Existujú aj viac rozmerové polia - matice. Max. 64 dimenzií. Napr. $tabulka[0][0] = 20

1. Hello World alebo Ahoj svet! v AutoIt-e

Príprava

Ak máme nainštalovaný AutoIt, tak môžme začať (nie je potrebné už nič nastavovať) :). Klikneme pravým tlačidlom na plochu (alebo v prieskumníku) a vyberieme Nový –> AutoIt v3 Script:

novy_subor_autoit

Inštalačný program defaultne (budem používať tento výraz, z ang. znamená predvolene) nastavil, aby sa po dvojkliku na skript spustil. Preto, ak chcete upravovať skript, musíte pravým tlačidlom stlačiť na súbor a vybrať Edit Script; čiže zobrazí sa nasledovná ponuka:

ponuka_au3

Otvorí sa SciTE editor so šablónou. Vymažte všetko. Teraz už môžeme začať.

Začíname

Hneď do prvého riadku vložíme tento príkaz:

  1. MsgBox(0,"","Ahoj svet!")

Stlačte F5 pre spustenie skriptu a zobrazí sa:

ahojsvet_au3

Komentáre slúžia na dokumentáciu kódu a pre lepšiu prehľadnosť kódu – AutoIt rozlišuje dva typy komentárov:

  1. ; Jednoriadkovy komentar
  2.  
  3. #cs
  4. Viac-
  5. riadkovy
  6. komentar!
  7. #ce

Úvod do skriptovacieho jazyka AutoIt

Čo je AutoIt?

  • AutoIt je freeware Windows skriptovací jazyk, ktorý je hlavne orientovaný na automatizáciu jednoduchých úloh Windowsu. AutoIt vytvoril Jonathan Bennett a vznikol v Januári 1999 a teraz sa vylepšuje. V roku 2004 vyšla verzia 3 - boli pridané mnohé výkonné skriptovacie možnosti, hlavne podpora Windows GUI. Syntax je veľmi podobná syntaxi Basic-u.
  • AutoIt script sa samozrejme dá kompilovať do samostatného spustiteľného súbora (exe). Skompilovaný skript má približne 280 kB (pôv. exe je ešte komprimovaný programom UPX).
  • Širokú paletu knižníc funkcií (známe ako UDF - "User Defined Functions",t.j."Uživateľom definované funkcie") obsahuje už AutoIt alebo taktiež sa dajú stiahnúť najmä z AutoIt podporného fóra. UDF rôzne rozšírujú funkcionalitu AutoIt-u.
  • Súbory s AutoIt skriptami majú obyčajne koncovku *.au3. Na editáciu AutoIt skriptov slúži štandartne SciTE editor, ktoré je pri AutoIt inštalácií (zadarmo). Existujú aj rôzne rozšírenie pre zvýrazňovanie syntaxi pre iné editory.

Vlastnosti AutoIt-u

  • Skriptovací jazyk podobný Basic-u.
  • Prídavné knižnice a moduly pre špecifické aplikácie.
  • Podpora pre TCP a UDP protokoly.
  • Podpora pre COM (component object modeling) objekty.
  • Volanie funkcií Win32 DLL súborov.
  • Spúšťanie konzolových aplikácií a prístupovanie štandartných streamov (prúdov).
  • Zahŕnuté súbory v kompilovanom súbore môže byť extraktované pri spustení.
  • GUI rozhranie, tvorba správ a input boxov.
  • Prehrávanie zvukov.
  • Simulovanie pohybov myšky.
  • Manipuláciá s oknami a procesmi.
  • Možnosť automatizovať posielanie vstup a klávies do aplikácií.
  • Unicode podpora od verzie 3.2.4.0.
  • 64 bit code podpora od verzie 3.2.10.0.
  • Podpora regulárných výrazov.

Oficiálny web: http://www.autoitscript.com

Taktiež tu stiahnete najnovšiu verziu 3/.3.0.0/:

Jednoduchá eurokalkulačka v C#

Toto je starší kód, ktorý som dávnejšie vytvoril. Obsahuje veľmi jednoduchú triedu Eurokalkulacka, ktorá slúži na konverziu medzi SK<->€
/// <summary>
/// Meny, SKK a EURO
/// </summary>
public enum Mena { Koruna, Euro }
/// <summary>
/// (Statická) Trieda služiaca na konverziu medzi menami SKK a EUROM
/// </summary>
static class Eurokalkulacka
{
    /// <summary>
    /// Stanovený konverzný kurz
    /// </summary>
    private const double konverznyKurz = 30.126D;

    /// <summary>
    /// Konvertuje hodnotu na inú menu
    /// </summary>
    /// <param name="konverznaMena">Mena, na ktorú chcete premeniť danú hodnotu</param>
    /// <param name="hodnota">Hodnota, ktorá ma byť skonvertovaná na inú menu</param>
    /// <returns>Vráti desatinné číslo, skonvertovanú hodnotu</returns>
    public static double Konverzia(Mena konverznaMena, double hodnota)
    {
        if (konverznaMena == Mena.Euro)
            return hodnota / konverznyKurz;
        else
            return hodnota * konverznyKurz;
    }

}
Tu je aj príklad použitia (na dve desatinné miesta):
//Vypise 451,89 SK :
Console.WriteLine("{0:0.00} SK", Eurokalkulacka.Konverzia(Mena.Koruna, 15));
//Vypise 1,00 EUR :
Console.WriteLine("{0:0.00} EUR", Eurokalkulacka.Konverzia(Mena.Euro, 30.126));

Ako vypočítať MD5 Hash v C#

Užitočná metóda na vypočítanie MD5 Hashu reťazca (nezabudnite vložiť na začiatok kódu: using System.Security.Cryptography;):

/// <summary>
/// Vypocita MD5 Hash daneho retazca.
/// </summary>
/// <param name="text">Vstupny text.</param>
/// <returns>Vrati MD5 Hash.</returns>
static string ZistiMD5Hash(string text)
{
    //Vytvorime novu instanciu objektu MD5CryptoServiceProvider
    //Pouzijeme using pre bezpecne uvolnenie instancie z pameti
    using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider())
    {
        //Vypocitaj hash a vrat ho do byte pola
        byte[] bytePole = md5.ComputeHash(Encoding.Default.GetBytes(text));

        //Vytvori instanciu objektu StringBuilder na skladanie retazcov/znakov
        StringBuilder strBuilder = new StringBuilder();
        //Prejdi kazdy byte v poli, premen jednotlive bajty na hexadecimalnu hodnotu
        //a pridaj do strBuilder
        for (int i = 0; i < bytePole.Length; i++)
        {
            strBuilder.Append(bytePole[i].ToString("x2"));
        }

        //Vrat hash
        return strBuilder.ToString();
    }
}

Porovnávať MD5 môžete jednoduchým spôsobom:

if (ZistiMD5Hash("Reťazec") == "MD5 Hash") ...

Samozrejme, že MD5 už nie je moderné (taktiež má svoje zraniteľnosti), ale dosť známe je aj SHA.

10 novembre

XNA Game Studio 3.0 je tu! Vytvárajte hry zadarmo a jednoducho!

XNA Logo 
XNA Game Studio Logo

Microsoft XNA Game Studio sú nástroje, s ktorými sa hry pre Windows, Zune dig. prehrávač a Xbox 360 (s aktívnym premium XNA Creators Club predplatným) vytvárajú ľahšie než kedykoľvek predtým. Verzia 3.0 zároveň podporuje najnovšie Visual Studio 2008.

Novú verziu stiahnete tu.

Prehľad:
XNA Game Studio 3.0 umožňuje ľahko vytvoriť hry pre Windows a MS Zune dig. prehrávač použitím optimalizovanej cross-platf. hracích knižníc založených na .NET Framework.

Systemové požiadavky:

  • Podporované operačné systémy: Windows Vista Service Pack 1; Windows XP Service Pack 3

Hardverové požiadavky:

  • Sú identické s VS2008
  • Grafická karta s podporou DirectX 9.0c a Shader Model 1.1 (Shader Model 2.0 je vyžadovaný pre niektoré Starter Kits)
  • Pre Zune: Min. Zune 3.0 FW

Viac informácií ohľadom novej verzie.
Domovská stránka http://creators.xna.com.

Microsoft vydalo predbežnú verziu Visual Studio 2010 a .NET Framework 4.0 (CTP)

Logo Microsoft .NET Framework
Nové logo .NET Framework (4.0) :

Môžete si ju stiahnúť. Neodporúčam ju pre bežných uživateľov, pretože je to len predbežná verzia, určená hlavne na testovanie.

Systemové požiadavky (CTP):

  • Podporované operačné systémy: Windows Server 2003; Windows Server 2008; Windows Vista; Windows XP
  • Minimálne 75 GB voľného miesta na HDD
  • Hostiteľský počítač musí mať minimálne 2 GB RAM (1 GB - OS, 1 GB - VPC)
  • Odporúčanie: CPU aspoň Core Duo 2 GHz processor
  • MS Virtual PC - Service Pack 1

Viac info a feedback tu.

Na záver: Plagát s novinkami .NET Frameworku 3.5 SP1 a 4.0. Môžete si ho stiahnuť tu.

Rozšírenia pre VS, komponenty pre .NET a zdrojové kódy (odkazy)

CodePlex - dosť veľká stránka, ktorá obsahuje množstvo Open-Source projektov, knižníc, komponentov. Hlavné zameranie je na .NET, ASP .NET, WPF a iné.
CodeProject - ponúka veľké množstvo článkov, pri väčšine sú pripojené zdrojové kódy a aj nejaké komponenty.
Blocks4.net - .NET komponenty
Visual Studio Gallery - nová stránka obsahujúca produkty a rozšírenia pre Visual Studio.

Tak to sú asi tie najznámejšie čo poznám.

1 novembre

Microsoft predstavuje Visual Studio 2010 a .NET Framework 4.0

Microsoft označil VS2010 a .NET Framework 4.0 za ďalšiu generáciu vývojárskych nástrojov. Sú navrhnuté tak, aby pokryli najnovšie potreby vývojárov.

Zameranie bude hlavne na:

  1. Zjednodušenie spolupráce - jednotlivých členov vývojového tímu behom celého životného cyklu aplikácií.
  2. Aktivácia nových trendov - každoročne sa vyvíja niečo nové a preto VS2010 podporuje najnovšie inovácie v uplatňovaní architektúry, vývoji  a nasadení.
  3. Povznášajúce vývojárske potešenie - VS2010 pokračuje naďalej dodávať významné zlepšenia na hlavnú vývojársku skúsenosť.
  • Modelovacie nástroje - Nová architektúra VSTS2010 umožní netechnicky založeným používateľom vytvárať a používať modely pre nastavenie systémových i obchodných funkcií v grafickom prostredí. Podporuje prostredie Unified Modeling Language (UML) i Domain Specific Language (DSL). Prichádzajúce modelovacie nástroje vo Visual Studiu 2010 sú súčasťou novej, rozsiahlej modelovacej platformy zameranej na komplexný návrh, tvorbu a správu servisne orientovaných aplikácií. Budú využívať jednotnú metadata repository homogénne prepojenú s ostatnými metadatami a zdrojovými kódmi životného cyklu aplikácií.
  • Zvýšená efektivita testovania - VSTS 2010 prináša zjednodušené nástroje pre testovanie aplikácií v priebehu celého životného cyklu aplikácií. Nové funkcie zahrňujú nástroje pre odstránenie nereprodukovateľných chýb, jednoduché nastavenie a nasadenie testov, prepracované plánovanie testov a sledovanie ich priebehu.
  • Prepracované možnosti spolupráce - Inovovaný Team Foundation Server (TFS) umožní vývojovým tímom nastaviť a prispôsobiť každý aspekt agilného programovania a jednoducho sledovať zmeny zdrojového kódu v grafickom prostredí. VSTS 2010 po prvýkrát prináša tiež podporu zostavovania softwaru založeného na pracovných procesoch, ktoré umožnia odhaliť chyby pred tým, než ovplyvnia prácu ostatných členov tímu.

Lepšie spolu - Visual Studio Team System Development Edition a Database Edition - V súlade so snahou zjednodušovať prácu nezávislým vývojárom.

 Visual Studio Team System 2010 Architecture Explorer
Visual Studio Team System 2010 obsahuje nový Architecture Explorer pre odhalenie a skúmanie existujúcich kódových blokov a programovej architektúry.

vsts2010_testers
Visual Studio Team System 2010 poskytuje testerom so súpravou nástrojov na riadenie testovacích prípadov a realizácie vylepšenú podporu pre vypĺnanie bugov.

Pozrite si VS2010 v akcii na Kanále 9
Denné budu pridávané nové videa zahrňujúce novinky Visual Studio Team System 2010
http://channel9.msdn.com/visualstudio

ZDROJE:
http://msdn.microsoft.com/en-us/vstudio/products/cc948977.aspx (EN)
http://www.itnews.sk/buxus_dev/generate_page.php?page_id=56516 (SK)