Category Archives: Windows

Jak mě dostalo UAC File System Virtualization: Virtual Store

Člověk se pořád učí. Dnes mě potkala lekce obzvláště těžká.

Na svých desktopech jsem vždy vypínal UAC, jeho zákoutí jsou mi tedy skryta a dosud mi to nechybělo. Dnes jsem narazil na něco, co mi chvíli dávalo zabrat.

Dohodl jsem se nedávno s účetní firmou na převzetí našeho účetnictví s tím, že ho povedou přes vzdálenou plochu na našem prostředí (Příjemně mě překvapilo, že jim to přišlo jako běžný požadavek.) Minulý týden jsme tedy nainstalovali čerstvé Virtual PC s Windows 7 a přesunul jsem na něj ze svého desktopu instalaci účetního systému Money S3. Účetní firmě jsme založili doménový účet, dali práva vzdáleného přístupu a vše jsem si vyzkoušel, když jsem se přes jejich účet na virtuál vzdáleně přihlásil a do účetnictví nastavil dovolené zaměstnanců za září, aby mohla účetní zpracovat mzdy. Během týdne jsem byl dost rozlítaný, takže mi účetní jen poslala mailem výstup ze zpracovaných mezd, vše jim fungovalo.

Dnes jsem si našel konečně čas, abych do Money naimportoval z našeho systému Goran vystavené faktury za září a připravil tak pro účetní část podkladů pro zpracování DPH. Přihlásil jsem se vzdáleně, provedl import a zaúčtování faktur, všechno v pohodě. Nakonec jsem si chtěl prohlédnout, jak účetní zpracovala mzdy.

Hledám marně. Mzdy tam nejsou. Chvíli přemýšlím, jestli to mohli nějak zpracovávat u sebe, nebo co se to děje. Zkoumám dál, v účetnictví nejsou ani ty dovolené, co jsem tam sám zadal. Panika, zmatek. Co se to mohlo stát, celé účetnictví vypadá tak, jako bych ho zrovna zmigroval ze svého desktopu. Nejsou v něm ani dovolené, ani mzdy, jen ty dnes importované faktury. Volám kolegovi, jestli nedělal nějaký restore staršího snapshotu VPC, nebo jestli netuší, co se to tam děje. Netuší.

Peklo, jak mám takovému stroji svěřit účetnictví? Co to tam hnije? Nechávám vypsat na počítači všechny soubory změněné po migraci účetnictví z desktopu, abych se alespoň trochu chytil, kdy se tam co dělo. Ve výsledcích jsem mj. zahlédl toto:

C:\Users\haken\AppData\Local\VirtualStore\Program Files\Money\Data\...

WTF? Co to je? Začíná mi to spínat…

Virtual Store

Nikdy předtím jsem o tom neslyšel (kupodivu). Nicméně ve zkratce řešeno je to mechanizmus ve Windows, který má sloužit pro podporu funkčnosti zastaralých legacy-aplikací, a když zjistí, že se aplikace pokouší zapisovat do Program Files, tak místo aby aplikaci vykopnul s odepřením přístupu, tak namapuje požadované soubory z profilu uživatele (VirtualStore). Stane se tak, že každý uživatel má vlastní podobu příslušné složky z Program Files. Ve finále jsem tedy měl v jednom uživatelském profilu Money s dovolenými a mzdami, v druhém pak s importovanými fakturami.

Jak to vypnout?

Popravdě řečeno jsem příliš detailně nepátral, jak to vypnout, nemám dneska chuť se s tím detailně drbat. U mě postačilo nastavit uživatelům Read+Write práva na příslušnou složku v Program Files a vypnout UAC. Vypadalo to, že samotná práva nestačí, přesněji řečeno zřejmě stačí, pokud jsou nastavena běžným uživatelům/skupinám, nikoliv však Administrators (tam administrátorský přístup právě hlídá ještě UAC). Administrátorům to vytvářelo VirtualStore, dokud bylo zapnuté UAC.

…no nic, složku v Program Files jsem přepsal verzí s dovolenými a mzdami a jdu naimportovat ty faktury znovu.

Windows Update Cleanup – nová volba Disk Cleanup utility

V jedné z posledních aktualizací Windows přibyla do Disk Cleanupu volba Windows Update Cleanup, která vyčistí z disku instalační soubory aktualizací Windows.

image

Konečně, v mém případě to byly 3GB. Když jsem se je kdysi pokoušel „vyčistit“ ručně, dost mi pak haprovaly instalace/odinstalace. Nová cesta by měla být bezpečná.

Propojení počítače s receiverem a TV pomocí HDMI: Jak na 5.1 zvuk – SPDIF

Vloni jsem v jiném článku řešil, jak propojit počítač a televizí pomocí HDMI. Už tehdy jsem si udělal názor, že propojení výpočetní techniky s technikou spotřební není pro běžného smrtelníka jednoduché. Nejinak je tomu, pokud svou techniku rozšíříme ještě o A/V receiver – další zařízení, další problém.
HDMI umí přenést zvuk v digitální podobě, používá se k tomu rozhraní SPDIF. Ovšem jak dostat zvuk do výstupu umístěného na grafické kartě? Jde to, návod je však různý pro grafické karty nVidia a ATI.

Problém první: Jak dostat vůbec nějaký zvuk do HDMI

Některé grafické karty nVidia mají z boku nedokumentovaný dvoupinový konektor, který slouží jako vstup pro digitální zvuk. Grafická karta do signálu nijak nezasahuje, pouze jej propojí na výstup, tedy pošle jej do HDMI kabelu. Ověření existence konektoru před koupí grafické karty není jednoduché, nezkoumal jsem detailně, ale nevzpomínám si, že bych informaci o něm běžně vídal ve specifikacích (ale to se možná mýlím).
Ale kde vzít digitální zvuk? Můžeme jej mít na zvukové kartě (na mé Audigy ZS 2 se nachází mezi piny pro připojení front panelu, rozložení pinu nutno najít na internetu), navíc dnes bývá digitální SPDIF výstup integrované zvukové karty i na základní desce. Umístění je nutno najít v manuálu k základní desce.
Takže výstup integrované nebo samostatné zvukové karty propojíme s grafickou kartou nVidia. K propojení jsem použil kabel s dvoupinovým konektorem, našel jsem kabel sloužící v dobách minulých k propojení CD-ROM mechaniky se zvukovou kartou. Polaritu kabelu nutno tipnou, při testech integrované zvukové karty i Audigy se mi to ani jednou nepovedlo napoprvé, naštěstí jsem si nic neodpálil.
Grafické karty ATI řady HD (snad všechny dnes prodávané modely) jsou vybaveny zvukovým kodekem, tváří se tedy jako samostatná zvuková karta. Problém s hledáním vstupů a výstupu digitálního audiosignálu a „drátování“ zde odpadá. Namísto toho je nutno nainstalovat ovladače této zvukové karty a případně ji pak nastavit jako primární.
S grafickými kartami ATI nemám žádnou zkušenost, zmíněné jsem našel na internetu při hledání řešení zde popisovaného problému.

Problém druhý: Jak dostat na výstup zvuk 5.1 (rozumněj DTS, DD+, apod.)

Do HDMI kabelu jsem dostal zvuk výše uvedeným postupem (pro nVidia), ale receiver hlásí „STEREO“ ať pustím jakýkoliv film.
Celý trik je jednoduchý, pokud víme, jak na to. Stačí prostě nainstalovat AC3Filter a nakonfigurovat jej. Jako základ jsem použil tento návod.
Na záložce Main:

  • Output format: AS IS (no change)
  • Rate: AS IS (no change)
  • Format: PCM 32 bit
  • Use SPDIF: ano (zaškrtnout)

Na záložce System:

  • Use AC3 Filter for: zašrktat vše
  • Prefer AC3Filter
  • Use Direct Sound by default
  • Show tray icon
  • Check output format support

Na záložce SPDIF:

  • Output format: stejně jako na záložce Main
  • SPDIF passthorugh: zvolit AC3 a DTS
  • SPDIF/DTS mode: Padded DTS
  • SPDIF/DTS conversion: Do not convert
  • SPDIF options: zaškrtnout vše, ale ne Output SPDIF as PCM ani 32kHz
  • DirectShow options: Check output format support

Ve Windows Media Playeru 12 (ve Windows 7) netřeba provádět další nastavení.
Ve Windows Media Player Classic – Home Cinema jsem provedl tato nastavení:

  • v nastavení Filter Settings jsem vše odškrtal
  • vypnul jsem Audio Switcher
  • v External filters jsem přidal AC3Filter.

Proč to funguje? Dobře to vysvětluje dokumentace AC3Filter & SPDIF, kterou doporučuji přečíst, pokud chcete toto řešení pochopit. Zjednodušeně: Samotné Windows umí do SPDIF poslat jen stereo v kódování PCM, ať je zdroj jakýkoliv. Pokud chceme něco jiného, je třeba aplikaci přenosový kanál pro digitální zvuk vyhradit exkluzivně. To mj. řeší právě AC3Filter.
(Windows 7, Windows Media Player 12, Media Player Classic – Home Cinema, AC3Filter)

 

Attachment: system.png

Instalace Windows 7 pomalá nebo končí černou obrazovkou

Při instalaci Windows 7 jsem se potýkal se dvěma problémy:

Instalace velmi pomalá

Na zobrazení každého dialogu se čekaly minuty, ke kopírování souborů jsem se nedostal, tak trpělivý jsem nebyl. Problém byl vyřešen vypnutím floppy disku v BIOSu (setupu) počítače. Floppy disk nemám.

Instalace končí černou obrazovkou

Druhý problém byl kurióznější. Instalace probíhala naprosto pohodově a svižně. Vše se na počítač nakopírovalo, po restartu se provedly další kroky. V okamžiku, kdy jsem se již měl přihlásit, najednou instalace skončila černou obrazovkou. Po všech možných pokusech (a dalších instalacích) jsem si všiml, že Windows vyhodnotili divně prioritu monitorů a jako primární označili přes HDMI zapojenou televizi televizi, přestože byla vypnutá. Instalace tedy proběhla korektně, přihlašovací dialog byl na televizi a sekundární monitor nic nezobrazoval. Po přihlášení stačilo jen změnit hlavní monitor.

Propojení počítače s TV přes HDMI: Problémy a jejich řešení

Propojení počítače s TV přes HDMI: Problémy a jejich řešení

Před nedávnem jsem zakoupil TV Sony Bravia a pomocí HDMI kabelu ji připojil k počítači. Po shlédnutí obrazu z počítače jsem se zděsil: „Tohle je ta kvalita? To snad ne!“ Nebyla, ke štěstí bylo potřeba provést několik nastavení.
Byl jsem překvapený, jak mizerné to je. V dnešní době, kdy máme TV s HDMI, grafické karty s HDMI a vše již je nějakou dobu na trhu, jsem se domníval, že prostě zapojím kabel a pofrčím. Omyl. Lituju všechny běžné uživatele, kteří investují do techniky nemalé peníze a nedostanou odpovídající kvalitu. Přestože technika ten potenciál rozhodně má.

Problém první: Obraz je rozmazaný, kus chybí

Obraz byl opravdu podivný, po stranách dokonce chybělo (nebylo zobrazeno) zhruba 30 pixelů. Děs.
Nejprve je nezbytné nastavit rozlišení, které odpovídá rozlišení televize, tj. pro FullHD 1920×1080. Poté na televizi nastavíme pixel mapping 1:1. Tím se zajistí, aby nedocházelo k přepočtům za účelem „vylepšení“ obrazu. Na Sony Bravia jej najdete v menu Nastavení obrazovky, Rozsah zobrazení, Plný obraz / Pixel (Screen, Display Area, Full Pixel).
Ověřit, že nedochází k přepočtům by mělo být snadné pomocí např. Malování. Nakreslete na monitoru vodorovnou a svislou černou čáru širokou právě 1 pixel. Při zobrazení na televizi by čára měla zůstat kontrastní, ostrá. Neměla by se rozmazat do více pixelů.

Problém druhý: Přepaly, podpaly

Po předchozím nastavení se obraz extrémně zlepšil. Stále to ale nebylo ono, obraz působil divným kontrastem, chyběly detaily ve stínech, světla byla přepálená. Příčinou je skutečnost, že televize předpokládá rozsah složek RGB signálu 16-235, zatímco počítač posílá 0-255. Proto hodnoty 0-16 jsou beznadějně černé, hodnoty nad 235 způsobují přepaly.
Otestovat toto je opět jednoduché, zase stačí malování. Vyrobte (vedle sebe nebo přes sebe) několik obdélníků s barvami RGB například (0,0,0), (16,16,16), (24, 24, 24), (32, 32,32) a (235, 235, 235), (248, 248, 248), (255, 255, 255). Zobrazte je na televizi. Obdélníky by měly být viditelně různé, pokud jsou všechny tmavé černé a všechny světlé bílé, musíte provést korekci. Pokud máte nekvalitní LCD monitor nebo jej máte špatně nastaven, můžete mít problém se zobrazením černých a zejména pak světlých boxů už na LCD!
Možností provedení korekce se uvádí několik, nicméně jediný, který mně zafungoval, je nastavit v ovladačích grafické karty jas a kontrast (NVIDIA Control Panel, Adjust desktop color settings). Při nastavování sledujte obraz na TV a snažte se najít ideální nastavení.
Tento krok jsem musel provést ve Windows XP.
Windows 7 zajistí výstup v RGB 16-235 samy, obraz je brilantní hned po instalaci systému.

Problém třetí: Zvuk

Přes DHMI je možné do televize dostat i zvuk. Většina nových grafických karet je vybavena digitálním vstupem (dva piny z boku karty), do toho je nutné přivést výstup ze zvukové karty. Z Creative Audigy jsem jej vytáhl z konektoru pro front panel, na webu lze najít popis pinů. Použil jsem kablík dříve používaný pro propojení CDROM se zvukovou kartou. Grafická karta se zvukem nic nedělá, pouze jej přenese do HDMI výstupu.
Pokud máte reproduktory lepší než ty v TV, pak se tímto bodem nezdržujte. Sám nakonec zvukový výstup přes TV nepoužívám.

Problém čtvrtý: Přehrávání videa

Při přehrávání videa různé programy a různá nastavení způsobily nejrůznější problémy: Zasekávání přehrávání, pády přehrávačů, cukaný obraz, černo na sekundárním displeji (televizi), obraz neroztažený na celou obrazovku a hlavně brutální ztrátu synchronizace zvuku od obrazu (jednotky sekund).
Řešení pro mne bylo neuvěřitelné: Nainstalovat si z Windows Update .NET Framework 3.5 (ačkoliv vývojář, na domácím počítači jsem jej neměl), stáhnout Windows Media Player Classic Homecinema. V nastavení výstupu (View, Options, Playback\Output) zvolit „EVR (Vista/.Net3)“.

Problém pátý: Titulky k videu

Jako titulkovadlo používám DirectVobSub. Ten ale ve Windows 7 nenaběhne sám, je nejprve potřeba jej nejprve zadat jako externí filtr: View, Options, External Filters, Add, DirectVobSub (Auto-loading version), OK, vpravo vyberte radiobutton „Prefer“, OK.

Děkuji Marku Chovancovi za rady, které mi dal jak při výběru TV, tak při jejím nastavení.

mstsc.exe /admin

Pokud jste u RDP clienta byli zvyklí na přepínač /console, pak vězte, že ho Microsoft přejmenoval na přepínač /admin:

mstsc.exe /admin

Cílovou adresu je možné předat přepínačem /v

mstsc.exe /v:my.server.com

Je to zjednodušeně řečeno připojení na jednu vyhrazenou session RDP (přesněji řečeno lokální konzoli, jako u běžného Remote Desktopu), kde se zejména neuplatňuje limit 3 admin-session, nýbrž se v rámci té jedné vyhrazené session připojení navzájem vykopávají (a tedy je to řešení, když vás server nechce pustit na RDP kvůli limitu 3 a Vám by jinak nezbývalo, než vyrazit k serveru a otevřené session sestřelit). Potřeba je pochopitelně účet s administrátorskými právy.

PAUSE v Powershellu

Příkaz PAUSE známý z BAT souborů v PowerShellu nefunguje, pokud chceme do cmdletu dostat vyčkání na stisk klávesy, můžeme například použít metodu ReadKey:

$null = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")Je i mraky jiných možností, jak dosáhnout efektu obdobného PAUSE.

Ctrl+Shift+Esc spustí Task Manager

…příjemná klávesová zkratka, o které jsem nevěděl.

Start Command Prompt Here na složce

  1. Průzkumník
  2. Nástroje ~ Možnosti složky…
  3. Typy souborů
  4. Najít „Složka“, „Folder“, nebo něco takového, co odpovídá verzi OS
  5. Upřesnit
  6. Nová… (akce)
  7. Akce: „Start Command Prompt Here“, Aplikace: „cmd.exe“
  8. OK, OK, OK, OK …

Vista: Nelze nainstalovat síťovou tiskárnu z Windows XP, chyba 0x00000035

Windows Vista Vás při pokusu o instalaci síťové tiskárny hostované na stroji Windows XP mohou obdařit elegantní chybovou hláškou o nemožnosti instalace s chybovým kódem 0x00000035. Obecně se jedná o chybu nenalezení síťové cesty, a to je i většinou problém Windows Vista při instalaci tiskárny. Windows Vista se totiž snaží tiskárnu nainstalovat nikoliv pomocí UNC share názvu, např. \\HAVIT\Printer1, ale pomocí názvu tiskárny, něco jako \\HAVIT\HP LaserJet P2015 PCL6, což se nepodaří.

Dá se postupovat jednou z následujících cest:

  • Tiskárny, Přidat novou tiskárnu, Síťovou tiskárnu, Není zobrazena, dle názvu = \\HAVIT\Printer1
  • Tiskárnu, Přidat novou tiskárnu, Lokální, Nový port, Název portu = \\HAVIT\Printer1  (a nebo jiný způsob přidání portu, např. přes Vlastnosti serveru)

Avšak pozor, ani tento postup mně nepomohl, při pokusu o přidání portu jsem dostával hlášku Přístup odepřen, přestože jsem byl k hostitelskému počítači přihlášen s právy administrátora. Pomohlo na dobu instalace dát na tiskárně všechna práva skupině Everyone. Po úspěšné instalaci ve Vistách jsem práva zase odebral a nechal jen Tisk a vše v pohodě chodí.