Category: Tipy, triky

Příprava pro publikování do Windows Store cizím účtem

Aplikace do Windows Store mohou vývojáři samozřejmě publikovat sami na svůj účet, ale stále častější je scénář, kdy vyvinete aplikaci pro zákazníka (třetí stranu), předáte mu balíček a necháte jej, ať ji publikuje do Storu sám. Není to složité, ale zároveň to není ani několik kliknutí ve Visual Studiu. Pojďme si postup projít.

Continue reading

Povolujeme CORS v API

Jedna rychlovka – občas prostě chceme, aby naše API netrpělo omezením na same-origin policy prohlížeče, protože ho máme zabezpečené třeba pomocí OAuth a je nám jedno, kdo ho volá, dokud má správný access token. Řešením je CORS (Cross-Origin Resource Sharing).

Hlavičky, kterými server prohlížeči řekne, že je mu jedno, odkud požadavek přišel, a že umí přijímat kredence, jsou tyto:

Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: OPTIONS,GET,POST,PUT,DELETE
Access-Control-Allow-Headers: Content-Type, Authorization

Uživatelské účty ve Windows Store Dev Center

Tým Windows Store se pochlapil a přidal žádanou podporu přístupu více uživatelů k jednomu účtu. V praxi to znamená, že můžete jako vlastník povolit vývojářům publikování aktualizací a IAP, finančníkům nastavovat ceny a sledovat nákupní reporty a marketérům odpovídat na ohlasy uživatelů. Pojďme se podívat, jak to funguje.

Continue reading

F12 Tools mimo prohlížeč?

Internet Explorer i Microsoft Edge obsahují šikovné nástroje pro ladění webů v podobě dobře známého F12. Webový prohlížeč ale dnes už není jediným místem, kde běží HTML a JavaScript – do WinForms a WPF můžete přidat ovládací prvek Web Browser, nové add-iny pro Office taky využívají jádro prohlížeče a moderní aplikace pro Windows mohou být celé napsané v JavaScriptu a HTML.

V žádné z těchto variant nejsou nástroje F12 dostupné (schválně, zkuste to… :) ). Systém Windows 10 je ale má v sobě schované – stačí spustit tzv. „F12 Attach Cooser“ podle toho, pro jaký procesor je aplikace napsaná.

  • C:\Windows\SysWOW64\F12\F12Chooser.exe (pro 64b aplikace)
  • C:\Windows\System32\F12\F12Chooser.exe (pro 32b aplikace)

F12-chooser

Aplikace se pokusí detekovat ostatní programy, které aktuálně využívají renderovací jádro prohlížeče. Na obrázku jsou vidět dvě – „Wikipedia“ je aplikace otevřená uvnitř Wordu, „Bing“ je stránka načtená v prohlížeči Edge.

Když zvolím Wikipedii, otevře se klasické okno F12:

F12-wikipedia

A nyní se můžu podrobně podívat, jak je vlastně add-in postavený a jak třeba vyrábí iFrame.

F12-debug

Tímto způsobem můžete např. ladit chyby v kódu na klientském stroji, kde nemáte Visual Studio a nemůžete připojit klasický debugger, nebo analyzovat výkon (záložka Performance umí sbírat vytížení paměti).

Chybí kandidát v hlavním balíčku

Snaha přesvědčit Visual Studio, aby vyrobilo balíček APPXBUNDLE, se může občas setkat s nepochopením v podobě chyby:

App manifest references the image ‚Assets\MojeAppka-square-310×310.png‘ which does not have a candidate in the main package.

Na první pohled nesmysl – když prohlédnu manifest, je v něm všechno v pořádku, však jsem taky obrázky a loga přes něj přiřazoval. Když se podívám do složky Assets, soubor tam je, ale má přívěšek .scale-100. A to je právě kámen úrazu.

Výchozí hodnota scale se pro UWP (tedy aplikace pro Windows 10) změnila na 200. Řešením je tedy doplnit patřičný soubor:

  1. Otevřít XXX.scale-100.png v grafickém editoru.
  2. Zdvojnásobit rozměry tak, aby původní obsah byl zachován uprostřed.
  3. Upravit pozadí, aby ladilo.
  4. Uložit jako XXX.scale-200.png.
  5. Opakovat pro všechny obrázky, které dělaly při tvorbě balíčku problémy.

image

Zdroj: http://blogs.msdn.com/b/maartenb/archive/2015/10/06/missing-default-200-logos-and-appx3210.aspx

Čistíme IIS Express

IIS Express je nepostradatelný nástroj pro vývoj a ladění webových aplikací – není třeba zprovozňovat lokální IIS server a nasazovat do něj desítky aplikací, které budou v mém případě stejně spuštěny jenom několikrát, prostě bašta. Než se to trochu zvrhne…

Včera jsem zjistil, že se mi u jednoho webu objevuje port, který ale nikde nastavený nemá. Chyba byla v tom, že IIS Express si nesl v konfiguraci sajtu z dřívějška, kterou jsem shodou okolností spouštěl ze stejného umístění a která měla trošku jinak nastavené adresy. Přišel čas na čistku.

IIS Express má u sebe nainstalovanou utilitku AppCmd.exe, která umí různé psí kusy – mimo jiné třeba vypsat seznam webů a také v nich mazat. Vzhůru do příkazové řádky:

cd C:\Program Files (x86)\IIS Express\
appcmd list sites /text:name

Tento příkaz vypíše jména všech webů, které jsou v IIS Express uložené.

image

appcmd delete site 'abc'

A tento smaže záznam webu „abc“.

image

Pokud bychom chtěli být sofistikovanější a použít modré okno PowerShellové, můžeme zkusit třeba tento skript:

$appCmd = "C:\Program Files (x86)\IIS Express\appcmd.exe"
$result = Invoke-Command -Command {& $appCmd 'list' 'sites' '/text:SITE.NAME' }
for ($i=0; $i -lt $result.length; $i++)
{
    Invoke-Command -Command {& $appCmd 'delete' 'site'  $result[$i] }
}

Ten pochází odtud a pro změnu smaže všechny uložené weby.

PowerShell–učíme Windows mluvit

Windows v sobě obsahují engine pro syntézu hlasu a když se tento propojí s možnostmi PowerShellu, může vzniknout třeba blbinka v podobě skriptu, jenž zahlásí, kolik baterky zařízení zbývá :)


function Speak([string]$str) {
Add-Type -AssemblyName System.Speech
$voice = New-Object System.Speech.Synthesis.SpeechSynthesizer
$voice.SelectVoice('Microsoft Zira Desktop')
$voice.Speak($str)
}


$percent = (Get-WmiObject win32_battery).estimatedChargeRemaining


$minutes = (Get-WmiObject win32_battery).estimatedRunTime
$span = (New-TimeSpan -Minutes $minutes).ToString()


Speak("You have $percent percent battery left.")

Jak povolit HTTPS na IIS Express?

Je to prosté, milý Watsone, stačí vědět, kam sáhnout. A protože jsem to nevěděl a už mám hlavu pomatenou komplexnostmi, hledal jsem to asi hodinu…

Properties webového projektu –> SSL Enabled –> True

image

Tohle přepínadlo zajistí, že se upraví patřičný konfigurák IIS Express (najdete ho ve složce C:\Users\<username>\Documents\IISExpress\config pod jménem applicationhost.config).

image

Sedm kouzel ve OneNote 2010

Počítač je vynikající nástroj na poznámky, pamatuje si jich totiž docela dost a umí je šikovně kategorizovat, prohledávat a celkově s nimi provádět psí kusy. Aby nebylo potřeba pro jejich pořizování používat software, který na to není úplně stavěný (např. Word), obsahuje systém Microsoft Office aplikaci OneNote. Tento článek přeskakuje základy (jak se OneNote používá, k čemu se hodí a k čemu naopak ne) a nabízí sedm rychlých tipů, o kterých jste možná nevěděli, ale rozhodně budou mít dopad na vaši efektivitu (jako měly na tu moji).

Continue reading

Jak uspat počítač přes vzdálenou plochu?

Pokud používáte k práci se vzdáleným počítačem připojení ke vzdálené ploše ve Windows 7, možná jste si všimli, že v nabídce Start na běžném místě chybí obvykle přítomné položky – kromě jiných „Režim spánku“ a „Režim hibernace“. Co když ale chceme počítač na dálku uspat? Jde to?

image
Klasika Windows 7
imageOmezená verze přes vzdálenou plochu

V případě, že vám nejsou cizí kouzla s příkazovou řádkou, zjistíte, že příkaz shutdown má pouze dva relevantní parametry: –s pro vypnutí a –r pro restartování počítače… Je to sice více možností než dodává standardní menu, ale jinak tudy cesta taky nevede.

Odpověď se skrývá pod klávesovou zkratkou Ctrl+Alt+End (která dělá na dálku totéž, co Ctrl+Alt+Del lokálně) a nenápadným červeným tlačítkem. Po kliknutí na šipku se totiž objeví kýžené volby – spát a hibernovat.

image