Introduzione allo sviluppo con
.NET Compact Framework
Roberto Brunetti
[email protected]
http://blogs.devLeap.com/rob
http://thinkmobile.it/blogs/rob
Marco Frontini
[email protected]
www.softandroll.it
http://thinkmobile.it/blogs/front
Fabio Santini
[email protected]
www.fsantini.net
http://thinkmobile.it/blogs/fabiosantini
…in questa sessione…
Mobile
&
.NET Compact Framework
… il MOBILE …
Luigi 16
… il MOBILE …
Arte Contemporanea
Microsoft Mobility Platform
Pocket PC
Phone
Smartphone
• Integrated
phone with PDA
Smart
Personal
Objects
• One-way
network
• Information
consumption
• Data viewing
• Interoperability
with Exchange
• .NET compact
framework
• Integrated PDA
with phone
• View and some
data entry
• Interoperability
with Office,
Exchange and
SQL Server
• .NET compact
framework
Tablet PC
Notebook PC
• Complex document
authoring, editing
and reading
• Keyboard centric at
the desk
• Keyboard and
mouse input
methods
• Full .NET
framework available
Windows CE+
Increased Functionality
• Complex document
authoring, editing and
active reading
• Note taking and ink
annotating
• Keyboard centric at the
desk, pen & keyboard
away from the desk
• Keyboard, mouse plus
pen, ink, and speech
input methods
• Full .NET framework
preinstalled
• Pen, ink, handwriting
and speech recognition
API’s
Windows XP
Panoramica su Windows CE
Win CE, Pocket PC, Windows Mobile, Cosa sono?
• Windows CE un OS Modulare
• Windows CE 3.0 (CF supportato solo su Pocket PC)
• Handheld PC 2000
(CF non è supportato)
• Windows CE .NET 4.2
• Windows for Pocket PC 2000-2002
(basato su Windows CE 3.0)
• Windows Mobile 2003 (basato su CE .NET 4.2)
• Windows Mobile 2003 SE (basato su CE .NET 4.21)
Roadmap
2002
Visual
Studio
.NET Compact
Framework
2003
2004
2005
Visual
Studio
2005
Visual
Studio
2003
1.0
1.0 SP1
Size
Smartphone
Portability
Compatibility
1.0 SP2
Perf update
Landscape
Autoscroll
Bug fixes
1.0 SP3
Bug fixes
2.0
Generics
COM interop
Controls
MD3DM
Performance
(redist)
(redist)
Pocket PC
Smartphone
Windows CE
PPC 2002
3.0
SP 2002
4.1
WM 2003
4.2
WM 2003 SE
5.0
WM 2005
Architettura
Architettura SW
Features delle varie versioni
• Windows CE (la base)
una shell stile windows…non sempre utilizzabile
• Pocket PC
una shell specifica
• Pocket PC Phone Edition
• Smartphone
Hardware
• Processori:
ARM, StrongARM, MIPS, Intel PXA, SH3, ecc.
• Comunicazione:
IrDA, Bluetooth, USB, Seriale
• Memoria:
RAM-ROM, SD, CF (esecuzione diretta dalla ROM)
Visual Studio 2003
Tipologie di progetto
• PocketPC, CE.NET e Smartphone: Differenze
Applicazioni console, in PocketPC e SP non sono supportate
(occorre caricare manualmente la console.dll)
Si possono creare applicazioni senza UI
Diverso posizionamento e gestione dei controlli
Attenzione al ClientRectangle con CE
•
•
•
•
Menu
Toolbar (no Smartphone)
Tab Control (su Smartphone ListView+Forms)
ListView, TreeView (Smartphone)
Visual Studio 2003
Architettura di un progetto
• Piattaforme supportate
 Project Properties
Output File Folder
Deployment Device
 Device Options
DEMO #1
Progetti PocketPC, CE.NET, Smartphone
Strumenti
• Compact Framework SDK
C:\Programmi\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK
• SDKs
Pocket PC 2003 SDK + Emulators 2003 SE
Smartphone 2003 SDK + Emulators 2003 SE
• Tools
Power Toys C:\Programmi\Windows Mobile Developer Power Toys
Remote Tools C:\Programmi\Windows CE Tools\Common\Platman\bin
Windows CE Utilities (debug su custom CE devices)
DEMO #2 Tools
C:\Programmi\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK
C:\Programmi\Windows CE Tools
C:\Programmi\Windows Mobile Developer Power Toys
C:\Programmi\Windows CE Tools\Common\Platman\bin
Differenze con la versione Full
.NET CF è un sottoinsieme della versione Full
Differenze
•
•
•
•
Tipi (molte classi sono state omesse)
Method Overloads (molti Overloads sono stati tralasciati)
Web Services (solo client)
NGen (manca)
Namespaces mancanti
•
•
•
•
•
•
•
Classi legate alla stampa (Crystal, PrintDialog, etc.)
System.Xml.XPath namespace ed Extensible Stylesheet Language
Transformation (XSLT)
Binary Serialization
Microsoft.Win32.Registry namespace
COM Interop
GDI+
Remoting
Linguaggi
•
per ora solo C# e VB.NET
Il codice è sempre IL compilato a runtime con il JIT, esiste la GAC
Namespaces e tipi specifici del CF
•
•
•
•
•
•
System.Net.IrDA namespace
System.Data.SqlServerCe
System.SR
<System.Windows.Forms.DataGrid.dll>
Microsoft.WindowsCE.Forms.dll
Input Panel
• Bluetooth purtroppo assente
• Class Library Comparison Tool
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.1033/dv_spchk/html/NET_Compact_Framework.htm
Windows Forms
.NET Compact Framework 1.x
•
•
•
•
•
Controlli supportati e non
TabIndex, TabStop
Gestione dell’Input Panel
Activation e Deactivation (Pocket PC)
Common dialogs
OpenFileDialog, SaveFileDialog: solo un livello sotto My Documents
ColorDialog, FontDialog: non sono supportate
Smartphone: non sono supportate
• Custom Controls
• Data Binding
DEMO #3
Win Forms, TabIndex, InputPanel,
Activation-Deactivation
Accesso ai dati
• Locale con XML
• Files, Streams
File, FileInfo, Directory, DirectoryInfo
BinaryReader/Writer, StreamReader/Writer,
FileStream, NetworkStream, MemoryStream,
StringReader/Writer
• Encodings, System.Text.Encoding
• Remoto con WebRequest (HttpWebRequest)
• Remoto con Web Services
• Locale con SQL CE
• Remoto con SQL Server 2000
• RDA
DEMO #4
Lettura files e DataBinding
Configurazione ambiente
di sviluppo e Debug
• Emulatore, configurazione per accesso alla
rete e al web
• Loopback adapter
• Debug e Trace, limiti con CF
• ActiveSync
3.5 fino a CE 4.1, 3.7 fino a CE 4.2, 4.0 per CE 5.0
DEMO #5
Configurazione ambiente di sviluppo
© 2004 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Content created by 3 Leaf Solutions
Scarica

il MOBILE - Microsoft