• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    KOJAProgramovani 40+
    Diskuze o obzive programovanim pro starsi a pokrocile.
    rozbalit záhlaví
    MUXX
    MUXX --- ---
    KLEINZACH
    KLEINZACH --- ---
    heh, jutub na me vytah devadesatkovou klasiku :)

    Top Gun - Animace - kultovní to počin z dob minulých
    https://www.youtube.com/watch?v=ZLqhRWMzUMQ
    MUXX
    MUXX --- ---
    OXYMORON
    OXYMORON --- ---
    MOAN_HARSHAW
    MOAN_HARSHAW --- ---
    VESELYSKEPTIK: standarta je prapor, pane kolego :)

    VESELYSKEPTIK
    VESELYSKEPTIK --- ---
    V tomhle auditku bych čekal odkaz k de facto standartu 132 znaku na řádek u řetězových tiskáren IBM a EC.

    JINX
    JINX --- ---
    AXTHEB: good point, ted uz to zacinam chapat. Kazdopadne to jde proti tomu jak pisou lidi každé volani na jeden samostatný radek (typicky NodeJS/Java)

    KLEINZACH
    KLEINZACH --- ---
    VOY: ze nedelame v Turbo *.*, jo ? :]

    TOOMIX
    TOOMIX --- ---
    JARDABEREZA
    JARDABEREZA --- ---
    Je to příliš dobré na to aby to byla pravda :-D Chtělo by to nějaký spinoff seriál Sillicon Valley... byla by to dobrá zápletka.

    DEEFHA
    DEEFHA --- ---
    Já mám Kingsmith Walkingpad R2B (už se ale myslím nevyrábí), je totiž skládací :-) A používám ho úplně normálně - pokud mám večer nebo ráno chuť, rozložím ho, zaběhám si a pak ho zase složím a opřu o zeď. Obvykle ale moc chuť nemám, protože všude po Praze chodím pěšky, hlavně do kanclu a zase zpátky domů. Jen to je nějakých deset kiláků svižné chůze několikrát týdně... Při práci bych se pohybovat nedokázal.

    Xiaomi Kingsmith WalkingPad R2 2-in-1 Foldable Treadmill
    https://www.youtube.com/watch?v=9c5BiHqqy70
    HOLAKAC
    HOLAKAC --- ---
    SULTHAN
    SULTHAN --- ---
    Jen pro zajímavost, jak taky vypadají non-react frontendy.
    Tady třeba máte příklad, jak stránky USPS mají geniální systém pro správu alertů, včetně uchovávání jejich historie.

    AMBIENTIUM
    AMBIENTIUM --- ---
    Pro zasmání z webu jednoho blázna co "programuje uř od roku 1978".

    KLEINZACH
    KLEINZACH --- ---
    tak jeste abych to uzavrel a uz koncim:

    jeste to nebyla konecna, protoze trida CVirtualDesktopManager je implementace, ale ne interface (ma mnohem vic metod a i poradi je jiny), ja hledam ve skutecnosti IVirtualDesktopManagerInternal2 (zrejme).

    pustil jsem ghidru na to dll a sel hledat vtables od toho interface, kterej me zajima a vskutku jej nasel. ghidra z toho dll a pdb v podstate vyrobilo zpetne tu classu a rovnou vtable dekodovala do citelny formy, abych to nemusel delat manualne (to mi na tom druhym softu chybelo.. ono to umi python pluginy, ale to uz je placeny).

    zde je videt: nalevo dekompilovana trida, napravo vtable, prvni tri volani jsou od IUnknown baze, ten zelenej zbytek je to co me zajima:



    coz odpovida interfacu (a to je muj cil):

    struct IVirtualDesktopManagerInternal : public IUnknown
    {
    public:
    	virtual HRESULT STDMETHODCALLTYPE GetCount (UINT *pCount) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE MoveViewToDesktop (IApplicationView * pView, IVirtualDesktop * pDesktop) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE CanViewMoveDesktops (IApplicationView * pView, int * pfCanViewMoveDesktops) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE GetCurrentDesktop (IVirtualDesktop ** desktop) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE GetDesktops (IObjectArray ** ppDesktops) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE GetAdjacentDesktop (IVirtualDesktop * pDesktopReference, AdjacentDesktop uDirection, IVirtualDesktop ** ppAdjacentDesktop) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE SwitchDesktop (IVirtualDesktop * pDesktop) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE CreateDesktopW(IVirtualDesktop ** ppNewDesktop) = 0;
    
    	virtual HRESULT STDMETHODCALLTYPE MoveDesktop(IVirtualDesktop * desktop, HMONITOR monitor, INT32 index);
    ..
    };
    
    MIDL_INTERFACE("EF9F1A6C-D3CC-4358-B712-F84B635BEBE7") // build 10130
    IVirtualDesktopManagerInternal10130: public IVirtualDesktopManagerInternal { };
    
    MIDL_INTERFACE("AF8DA486-95BB-4460-B3B7-6E7A6B2962B5") // build 10240
    IVirtualDesktopManagerInternal10240 : public IVirtualDesktopManagerInternal { };
    
    MIDL_INTERFACE("f31574d6-b682-4cdc-bd56-1827860abec6") // build 10536
    IVirtualDesktopManagerInternal10536 : public IVirtualDesktopManagerInternal { };
    
    MIDL_INTERFACE("f31574d6-b682-4cdc-bd56-1827860abec6") // build 16299
    IVirtualDesktopManagerInternal16299 : public IVirtualDesktopManagerInternal { };
    


    dal sem kousek vic, aby bylo videt jak se furt meni ty guidy, plus treba v buildu 22000 pribyly i dalsi metody

    --

    tak jo, diky za pozornost - kdybych to vypravel v hospode, vsichni by meli skelny oci a pohled do nekonecna :)

    (a proc mi to padalo? mel jsem prehozene metody v interface, duh)
    OXYMORON
    OXYMORON --- ---
    JARDABEREZA: U nás to teď vypadá takhle

    JARDABEREZA
    JARDABEREZA --- ---
    OXYMORON: Dík za obrázek... udělal jsem si vlastní adaptaci, aby to sedělo na moji práci :-D Hned se cítím líp :-D

    OXYMORON
    OXYMORON --- ---
    JARDABEREZA
    JARDABEREZA --- ---
    Ještě se mi hodně osvědčilo přenastavit quick search takhle. Je to rychlé a přehledné... výchozí nastavení je myslím trochu víc schované.

    Hodně dobré je to v kombinaci s "show all files in current dirs and subdirs", kdy víte jaký soubor přibližně hledáte, ale je v nějaké ze stovek podsložek

    Kliknutím sem můžete změnit nastavení reklam