• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    ANDY_WARHOL: mimochodem tohle je docela zajimavy. na hlavnim desktopu mi to na obrazovce "Control Panel\System and Security\System" ukazuje v sekci pen and touch 256 bodovej panel, a ve virtual boxu, kde mam povoleny usb z hosta, mi to ukazuje 2bodovej panel, coz je napikacu, protoze to skutecne funguje jen na dva doteky, ja bych rad mel vyvojovy prostredi ve virtualce, ale tohle by me slusne brzdilo
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    TENCOKACISTROMY: ok, diky za info.
    ale koukam ze s hlavni myslenku toho co sem chtel vyjadrit celkem souhlasite.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: Ve 32-bit klidne muzes 64-bit aplikace kompilovat i debugovat.

    Jinak souhlasim s tim ze Express je spis pro studenty na vyzkouseni. Pro poradnou praci to neni.
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    ANDY_WARHOL: jj, foldery, resp jejich neexistence, jsou v expressu velky opruz
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    ANDY_WARHOL: a vzhledem k tomu, ze chci vyvyjet multitouch aplikaci, tak mi to v tom virtualu stejne nevyhovuje - to zarizeni na multitouch tam nefunguje to tam jak by melo.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    ALCATOR: expres je mi naprd, jsem zvyklej z prace na veci, ktery v expresu nejdou a to si pak pripadam jak mameluk, napriklad: clovek by nerekl ze i takova blbost jako chybejici moznost folderu v solutions ti muze zkomplikovat praci, sice to neni nejaky kriticky (tahle funkcionalita), ale zdrzi te to treba o pulhodinu. kdyz sem minule stahnul nejaky solution s prikladama pro to co potrebuju, tak mi to ty projekty, co byly ve folderech vubec nenahralo, musel bych ten solution vytvorit znovu rucne, proste zbytecny opruz. co je ovsem horsi, ze tam nefunguji pluginy (bohuzel sem si prilis zvykl na resharper, nasel sem ted sice coderush co je zadarmo a ktery by mel jit i do expresu, ale nevim jestli to dostatecne vynahradi). upirateny studio je fajn, ale nasel sem jen 32bitovy. nejsem si uplne jistej, zda v nem pak pujdou zkompilovat 64 bit aplikace, ale rekl bych ze ne, vzhledem k tomu co chci delat za soft, je to dulezita vec.

    nakonec sem se prihlasil do biz sparku. jeste me to neodklepli, ale snad to bude kazdym dnem.
    navic mam ve virtualu i betu 11, ale na to se nebudu moc spolehat.
    HHANULKA
    HHANULKA --- ---
    Shánějí se programátoři pro Social Innovation Camp (16.-18.3. 2012, Brno)
    - inspirativní víkend strávený na tvorbě těchto 6 projektů, které mají za cíl stát se sociálními inovacemi:
    Nápady pro Social Innovation Camp 2012 | Inovace pro společnost.cz
    http://www.inovaceprospolecnost.cz/clanek/napady-pro-social-innovation-camp-2012

    Přihláška co nejdříve zde:
    Zapoj se | Inovace pro společnost.cz
    http://www.inovaceprospolecnost.cz/zapoj-se
    (je už po deadlinu, tedy stačí se hlásit bez nápadu)
    ALCATOR
    ALCATOR --- ---
    ANDY_WARHOL: Visual Studio Express je zadarmo. Muzes ho kdykoliv upradeovat za castku mezi 300 a 1000 dolaru/euro na full verzi. Celkem rozsirena praxe je, ze vytvaris v upiratene verzi, a kdyz mas hotovy program a vypada to nadejne s komercni uspesnosti, tak si holt zlegalizujes a rychle prodavas, aby se ti to vratilo.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    PIGSTER: jasne, s tema indama je to trochu nadsazka, ale mas uplnou pravdu
    z c nemam zadny zkusenosti, takze ti budu muset verit. vychazel sem z toho, ze v podstate kazdej program je cracknutelnej, ale to muze byt samozrejme jinejma metodama, nez jen prostym rozkompilovanim a zmenou v kodu.
    PIGSTER
    PIGSTER --- ---
    ANDY_WARHOL: je to tady trochu OT, ale C / C++ je tak dobre dekompilovatelny, jak spatnej mas prekladac. Dobrej prekladac C je snad nejlspsi obfuscator - uz rozbalenej cyklus je pruda, ale jakmile do toho zacne kecat inlineing a obchazeni zasobniku pri volani a navratech tak to uz proste nejde - kopa informaci se tam proste v procesu ztrati. Uplne chybi metadata - mas jenom horu napul strukturovanyho ASM a nejaky zbesily tabulky ktery ti rikaj kam a kdy se skace kdyz volas metody.

    .NET ma metadata, muzes je schovavat jak chces, ale na jednotlivy objekty a metody to pujde rozdelit vzdycky. A IL neni zdaleka takovej humus jak 32bit intel assembler.

    IMHO teze o dostatku indu po tom, co jsem slysel jak kvalitni jsou to programatori neplatila nikdy. S dostatkem Rusu uz bych si zdaleka tak jistej nebyl :)

    ANDY_WARHOL
    ANDY_WARHOL --- ---
    TENCOKACISTROMY: takze to pujde, ale bude to namahavy, tzn je to pouzitelna ochrana, ale teze o dostatku indu plati dal :)
    diky
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: No, jde o to, ze na zaklade C# zdrojaku jsi schopen vytvorit jen podmnozinu moznosti, ktere lze udelat v IL.
    Jeden priklad za vsechny: v C# nemuzes volat (i definovat) dve metody lisici se pouze typem navratoveho parametru. V IL s tim neni problem. Pri dekompilaci do C#/VB.NET/atd... se ti tento kus proste nepovede prevest. A pokud se ti povede prevest do C#, tak ho uz ale nezkompilujes.

    V IL je taktez validni, kdyz staticka metoda neni v zadnem typu (trida/struktura) a je obsazena primo v modulu (tam co jsou typy). Nicmene v C#/VB.NET/atd... to je nevalidni.

    Dalsi moznosti je delat tam ruzny prasarny. V nejakym blogpostu jsem cetl napad cloveka, kterej vzal vygenerovanej IL ze C# kde byl klasicky "for(int i = 0; ......)" a zprahazel tam nejaky IL instrukce. Ve vysledku to fungovalo uplne stejne dobre, ale dekompilatory si s tim neporadili (nedokazali zrekonstruovat ten upravenej "for").

    Nicmene pokud chces necemu takovymu zabranit chytrejsim zpusobem nez jen pouzit nejaky dostupny obfuskator, tak se nevyhnes primy praci s IL.

    Ve vsech pripadech ale plati, ze si to vzdycky muze diassemblovat primo do IL a upravit si to rovnou v nem. Kdyz si v projektu nekde vedle udela metodu se stejnou signaturou, vyplni ji svym kodem a nasledne vznikly IL vymeni za ten tvuj, nejspis bude uspesny.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    tohle me opravdu zajima, nechci vydat svuj prvni krabicovej soft aby to hned prvni jouda s reflektorem a deobfuscatorem rozprcal a vykrad
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    ANDY_WARHOL: timto sem nemyslel nejaky se posmivani ti, ale spis aby si to rozvedl do detailu, jak si to predstavujes, ja to pak zkusim a zkusim to dekompilovat a uvidime.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    TENCOKACISTROMY: no priznam se ze sem zde na velmi tenkem lede, tyhle veci sem nikdy do hloubky nezkoumal, takze si rad necham poradit.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: Zdaleka ne veskere validni IL lze patricne prepsat do C#.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    jak tu nekdo psal, kdyz ma clovek dostatek indu (casu) tak rozprca vsechno.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    TENCOKACISTROMY: jak si to predstavujes konkretne, treba pouzivat f# na casti ? a kdyz je to v msil, a dekompilujes to tak to stejne dostanes do c# nebo se pletu ? nebo si myslel to psat v cecku ? ale to je taky dekompilovatelny
    mozna to napsat rovnou 0101100110010101010101010011011110101101 :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: Co treba nektery funkce mit napsany v necem jinem nez v C#. A nektere metody nemit v zadne tride ale jen v ramci modulu?
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    MORMEGIL: diky, tohle sem hledal !
    Kliknutím sem můžete změnit nastavení reklam