Come molti sviluppatori, in questi giorni sto fremendo per poter iniziare ad usare la Consumer Preview regolarmente, sia a lavoro che a casa. Tuttavia Windows 8 è ancora in versione preliminare, il che implica che potrebbero esserci delle incompatibilità con dispositivi e software. Prima di migrare la workstation completamente alla prossima versione di Windows, ieri ho iniziato a giocare con Windows 8 Consumer Preview 32bit su un portatile secondario (un DELL XPS M1330) con un unico obiettivo: verificare quali strumenti di sviluppo funzionano e quali no.
Il minimo richiesto è questo:
- Visual Studio 2010 SP1
- Expression Blend 4
- Silverlight 4 SDK + strumenti
- Windows Phone 7.1 SDK + strumenti
- Windows Azure SDK
- SQL Server 2008 R2
- Visual Studio 11 Beta
Dopo un giorno di prove e una serie di workaround, sono riuscito ad installarli tutti con successo.
La chiave di tutto è installare tutti gli applicativi rispettando l'ordine temporale di rilascio: prima si installano tutti i "vecchi" strumenti di sviluppo e i loro aggiornamenti/service pack, quindi il nuovo VS11 Beta.
Ho incontrato alcuni problemi con Windows Azure SDK (ma seguendo questa guida l'installazione procede con successo; bisogna solo ricordarsi di avviare VS2010 con diritti di amministratore per poter fare debug con l'emulatore di Azure) e Windows Phone 7.1 SDK, che attualmente presenta alcune problematiche note.
Dal blog ufficiale di Windows Phone, queste sono le problematiche che si hanno eseguendo Windows Phone SDK su Windows 8 Consumer Preview:
- Non è supportato in VS11: serve VS2010.
- .NET 3.5. Capability.exe e slsvcutil.exe non funzionano in Windows 8.
Fix: basta installare .NET 3.5 da Control Panel - Turn Windows features on/off.
- XNA Game Studio. Durante l'installazione del Windows Phone SDK, l'utente riceverà dei messaggi di errore riguardanti alcuni componenti XNA. Questi componenti non si installeranno in Windows 8; una soluzione si trova sul blog di Aaron Stebner.
Questi sono i passi per installare correttamente l'SDK:
- Scaricare e installare l'ultima versione di **Games for Windows - LIVE Redistributable ** da http://www.xbox.com/en-US/LIVE/PC/DownloadClient
- Installare Windows Phone SDK 7.1
- Windows Phone Emulator. Windows 8 non può far girare il Windows Phone Emulator, il che rende più difficile fare il debug delle proprie applicazioni. Ci sono due opzioni: sviluppare con un dispositivo fisico (funziona senza problemi) o provare con questo semplice workaround: impostare Microsoft XDE in modo che venga lanciato in modalità compatibile "Windows 7".
Questi sono i passi per configurare l'emulatore, dopo l'installazione dell'SDK:
- Aprire Explorer e andare nella cartella "C:\Program Files\Microsoft XDE\1.0"
- Fare clic con il tasto destro sul file XDE.exe, quindi scegliere Properties
- Nella finestra Properties, andare nel tab Compatibility
- Selezionare il flag "Run this program in compatibility mode for" e scegliere "Windows 7" dalla lista.
- Click su OK
Ora è possibile fare il deploy e il debug di applicazioni Windows Phone da VS2010 come si fa in Windows 7. L'emulatore girerà un po' più lentamente, ma funziona.
Riassumendo, questo è l'ordine di installazione che ho seguito e che funziona (attenzione: non posso tuttavia assicurare che questo funzionerà anche sulle vostre macchine!):
- Windows 8 Consumer Preview 32bit
- Drivers / aggiornamenti
- Visual Studio 2010
- Visual Studio 2010 SP1
- Expression Blend 4
- Expression Blend 4 SP1
- Silverlight 4 SDK + strumenti
- pre-requisiti Windows Azure SDK (da questa guida)
- SQL Server 2008 R2
- SQL Server 2008 R2 SP1
- Windows Azure SDK 1.6
- Games for Windows - LIVE Redistributable
- Windows Phone 7.1 SDK + strumenti
- Zune
- Visual Studio 11 Beta
Mi è rimasta una sola problematica aperta con questa sequenza di installazione: Blend 5 Beta non funziona. Si avvia, ma quando si prova a creare un nuovo progetto partendo dai modelli disponibili (sia HTML e sia XAML) o aprendo un progetto esistente creato in VS11, semplicemente visualizza soltanto una Solution vuota. Quando si prova ad aggiungere un progetto esistente alla Solution, dà un errore "Unsupported project" e non lo carica.
Sto cercando un modo per risolvere il problema. Non ho ancora provato, ma forse una possibile soluzione è quella di disintallare Expression Blend 4, re-installare VS11 e quindi installare di nuovo Expression Blend 4.
Qualcuno ha qualche altra idea o ha avuto un'esperienza simile?