Blog di LucaB

audio, video, disco

June 2007 - Posts

Safari per Windows - terza puntata

Grazie a questa segnalazione ho scoperto che è stata rilasciata una nuova versione di Safari 3 Beta per Windows, la 3.02. La fiction o telenovela perciò continua, dopo la prima e la seconda puntata ecco la terza.

L'inizio della puntata non è dei più promettenti: sul sito italiano di Apple, infatti, non viene in alcun modo menzionata né di che release si tratti, né le modifiche rispetto alle precedenti versioni rilasciate, neanche nella sezione download.

Sono andato sul sito in inglese e lì ho trovato finalmente le informazioni sulle modifiche nella sezione download. La versione distribuita è la 3.02.

Changes in Safari 3.0.2 for Windows beta:

Latest security updates
Improved stability
Fixes for text display, non-English systems, and start-up times

Tra i problemi risolti c'è, quindi, anche quello da me ipotizzato relativo ai sistemi non in inglese, perciò la cosa lascia bene sperare.

imageHo perciò provveduto ad effettuare il download dalla pagina italiana e ad avviare per la terza volta l'installazione di Safari su Windows (ho usato Vista Home Premium).

L'installazione termina correttamente, aprendo il browser vedo che la versione installata è la 3.02, perciò provo subito a riprodurre il bug che avveniva sistematicamente con la pagina di google (vedi precedenti puntate).

Finalmente una buona notizia: come indicato nel sito di Apple (non quello italiano), i crash continui su sistemi operativi non in inglese sembrano non accadere più. Anche altre prove di navigazione semplice non sembrano creare problemi.

image

Posso finalmente cominciare ad usare questo browser, autodefinito da Apple "Il miglior browser del mondo", e verificare quanto sia vera questa affermazione, ma di questo scriverò in un prossimo post.

Technorati Tags: ,

View blog reactions

VS 2008 JavaScript Intellisense

L'elenco di piacevoli novità che troveremo in VS 2008 continua ad arricchirsi di nuovi elementi. Dopo averci illustrato il multi-targeting support (di cui ha scritto ieri Mighell), Scott Guthrie spiega in questo post le nuove caratteristiche dell'Intellisense per JavaScript che saranno presenti in VS 2008 (anche nella Express Edition di Visual Web Developer 2008).

JavaScript è un linguaggio dinamico, nel senso che non ha dichiarazioni esplicite di tipo. Ciò ha reso difficile l'implementazione di un buon intellisense finora.

VS 2008, invece, tiene conto di come una variabile viene utilizzata nel blocco di codice JavaScript per capirne dinamicamente il tipo e l'uso e fornire quindi un adeguato supporto intellisense (type inference).

L'intellisense funziona anche tenendo conto di librerie o file esterni JavaScript inclusi nella pagina, nonché di servizi web interfacciati mediante AJAX.

Si tratta di una feature molto comoda per chi come me sviluppa in ASP.NET e utilizza JavaScript e AJAX. 

Adesso aspetto i prossimi post in cui Scott Guthrie ci illustrerà le possibilità di debug per JavaScript (operazione adesso molto ostica) ed il supporto per il design WYSIWYG di ASP.NET AJAX e del relativo Control Toolkit, anche queste novità particolarmente gradite presenti in VS 2008.

Per tutti i particolari:

VS 2008 JavaScript Intellisense - ScottGu's Blog

View blog reactions

Windows Home Server RC1

Hanno accettato la mia richiesta di provare la RC1 di Windows Home Server ed ho appena finito di scaricare le immagini per il dvd di installazione e altro.

Windows Home Server Logo

Conto di installarlo questo fine settimana per cominciare a provarlo. Questo prodotto mi interessa molto (sono arrivato a quota 3 PC in casa) ed alcune features sembrano interessanti. Ad esempio il backup centralizzato con Single Instance Store (che rende i backup differenziali e evita la creazione di duplicati, anche se provenienti da diversi PC), la funzionalità di disaster recovery, il WHS Drive extender e dynamic disk control, con la possibilità di creare ridondanze su due o più dischi di alcuni dati (meglio del RAID, a quanto sembra).

C'è anche la possibilità di accedere al proprio WHS dall'esterno, per effettuare upload o download di file (tipo foto) attraverso una semplice interfaccia web, nonché di utilizzare dall'esterno un PC di casa.

Non vedo l'ora di provarlo, spero solo di riuscire a trovare un po' di tempo...

Link su Windows Home Server:

Technorati Tags:

View blog reactions

Safari beta 3.01 - riproviamoci

Probabilmente le critiche di molti utenti, comprese le mie, non erano campate in aria. Come ho letto da questo post, infatti, la Apple ha rilasciato una nuova versione patchata di Safari 3 beta, che ho provveduto a scaricare ed installare.

Le note negative cominciano subito: sebbene la Apple dica di aver posto rimedio ad alcuni problemi, non ne fa menzione alcuna sul sito ufficiale, che ha provveduto invece ad arricchire di grafici colorati attestanti la superiorità del loro browser.

Nella sezione download, invece, è scritto sotto il titolo Download Updates, che effettivamente ci sono aggiornamenti di sicurezza: Changes in Safari 3.0.1 for Windows beta - Latest security updates. Ironico che tale avviso sia preceduto dallo slogan "Apple engineers designed Safari to be secure from day one."

Nessuna traccia, invece, di notizie per la risoluzione di altri bug come quelli probabilmente legati alla localizzazione.Safari 3.0.1

Dopo aver installato la nuova versione, ho provato a ripetere quanto fatto la scorsa volta: andare su www.google.it per cercare qualcosa.

Inutile mettere lo screenshot, dato che il risultato è stato lo stesso: appena si prova a scrivere qualcosa nell'apposita casella di testo, Safari smette di funzionare.

Sarà per la prossima volta.

Technorati Tags: ,

View blog reactions

Formattazione delle date

In .NET un dato di tipo DateTime viene immagazzinato attraverso un valore di tipo Long (intero a 64 bit con segno), che rappresenta il numero di intervalli di tempo di 100 nanosecondi intercorsi dalle ore 0.00 del 1 gennaio 0001.

Ad esempio, se d è un dato di tipo DateTime, possiamo assegnare il valore numerico alla variabile l utilizzando la proprietà Ticks di DateTime:

Dim l As Long = d.Ticks

Ad esempio, alla data 15/06/2007 14.40.08 corrisponde il numero 633175152080000000.

La rappresentazione di una data, invece, dipende dalla culture utilizzata e dalla formattazione scelta. 

Quando si deve formattare una data in .NET può essere utile avere sottomano la seguente tabella.

Formati predefiniti

Il nome del formato può essere utilizzato così come scritto come argomento per la funzione Format (le alternative nella stessa cella sono equivalenti) ed il risultato dipende dalla Culture del Sistema (o del Thread)

Nome formato Descrizione Esempio it-IT Esempio en-US
General Date
G
Generico (data e ora) 15/06/2007 14.40.08

6/15/2007 2:40:08 PM

Long Date
Medium Date
D
Long (data)

venerdì 15 giugno 2007

Friday, June 15, 2007
Short Date
d
Short (data) 15/06/2007 6/15/2007

Long Time
Medium Time
T

Long (ora) 14.40.08

2:40:08 PM

Short Time
t
Short (ora)

14.40

2:40 PM
f data Long e ora Short venerdì 15 giugno 2007 14.40 Friday, June 15, 2007 2:40 PM
F data Long e ora Long venerdì 15 giugno 2007 14.40.08 Friday, June 15, 2007 2:40:08 PM
g data Short e ora Short 15/06/2007 14.40 6/15/2007 2:40 PM
M
m
mese e giorno 15 giugno June 15
R
r
data e ora formato GMT Fri, 15 Jun 2007 14:40:08 GMT Fri, 15 Jun 2007 14:40:08 GMT
s data e ora (indice ordinabile)  2007-06-15T14:40:08 2007-06-15T14:40:08
u date e ora formato GMT (indice ordinabile) 2007-06-15 14:40:08Z 2007-06-15 14:40:08Z
U data GMT Long e ora GMT Long venerdì 15 giugno 2007 12.40.08 Friday, June 15, 2007 12:40:08 PM
Y
y
mese e anno giugno 2007 June, 2007

In alcuni casi è tuttavia necessario visualizzare la data in un formato personalizzato non presente tra quelli predefiniti.

Formati personalizzati

Per creare un formato personalizzato per una data o un'ora, possiamo usare dei caratteri speciali nella stringa di formattazione.

Carattere Significato

:

Indica il separatore per l'ora. In output il separatore utilizzato sarà legato alla Culture del Thread. Ad esempio per it-IT si avrà ".", per en-US si avrà ":".
/ Indica il separatore per la data. In output il separatore utilizzato sarà legato alla Culture del Thread.
% Indica che il carattere seguente deve essere inteso come un formato personalizzato di una sola lettera (e le eventuali lettere seguenti considerate a parte). Serve ad evitare ambiguità. Ad esempio: "d" viene interpretato come il formato predefinito Short Date e visualizza "15/06/2007", mentre "%d" come numero del giorno nel mese (vedi dopo) e visualizza "15".

Alcune lettere, invece, hanno un significato particolare in una stringa di formattazione.

Ad esempio: d indica il numero del giorno nel mese (da 1 a 31), dd la stessa cosa, ma preceduto da uno 0 quando il giorno va da 1 a 9 (da 01 a 31), ecc.

Per un elenco completo si può vedere qui.

Il processo inverso si ha quando si vuole convertire una stringa in una data. In tal caso si possono utilizzare diversi metodi di DateTime. Tra questi ce n'è uno nuovo, ossia presente dalla versione 2.0 del Framework .NET, molto comodo.

Si tratta del metodo TryParse, a cui passare la stringa e il riferimento alla variabile dove sarà immagazzinato il risultato, che restituisce un valore di tipo Boolean. Nel caso in cui la conversione non riesca, il metodo restituirà False, senza generare un'eccezione. Se tutto va bene sarà restituito True.

Technorati Tags: , ,

View blog reactions

Perle di traduzione

Spero che quello che ho letto su una confezione di una pen drive usb sia frutto di un traduttore automatico, magari anche un po' bacato. Riporto la perla.

  • In inglese:

    SPECIFICATIONS:
    This easy to use USB 2.0 Flash Drive stores and transfers data between PC's, including images, documents and MP3 files.

  • In italiano:

    SPECIFICAZIONE:
    Questo facile di usare USB 2.0 Spinta di Lampo, i negozi e trasferisce dei dati tra computer, includendo le immagini, i file di documenti e MP3.

 

Technorati Tags: ,

View blog reactions

Posted: Jun 12 2007, 09:40 PM by lucab | with 1 comment(s)
Filed under:
Safari 3 beta per Vista

È uscita la versione 3 beta di Safari, il browser predefinito degli utenti Mac. La novità principale è che è disponibile una versione per Windows (XP e Vista), scaricabile gratuitamente qui.

Cominciamo con le cose positive: per chi come me si occupa di sviluppo ASP.NET, è positivo che finalmente sia possibile vedere come appaiono i siti web in Safari senza dover essere costretti all'acquisto di un costoso Mac (o alternative tipo siti che fanno screenshot).

Le cose positive, però, finiscono qui, poiché la prova su strada di Safari non ha dato che impressioni negative.

L'ho installato su 3 PC con Windows Vista Business e uno con Windows Vista Home Premium (tutti e 4 in italiano). Su 1 è andato in crash durante l'installazione, che però è stata completata al secondo tentativo.

Su nessuno dei PC, però, funziona bene. Su 2, infatti, quando si apre Safari va direttamente alla home page preimpostata, ma non appare la barra degli indirizzi, né i menù.

Sugli altri 2 invece è possibile utilizzarlo e navigare, ma Safari va in crash in continuazione. Ad esempio, ogni volta che si va su Google e si prova a scrivere una parola, non si arriva alla seconda lettera che Safari va in crash.

Safari

Che dire, avrei voluto approfondire alcuni aspetti, come il diverso rendering dei font, analizzato qui e anche qui, oppure misurarne la velocità di caricamento delle pagine (è pubblicizzato come il più veloce browser in circolazione), ma non mi è stato possibile.

Probabilmente disinstallerò questa public beta, che sembra piuttosto una early alpha, in attesa di versioni più stabili.

Guardando in rete, infatti, ho trovato oltre ad altre impressioni negative, anche l'annuncio di gravi bug di sicurezza scoperti a poche ore dal lancio.  

Alla faccia dello slogan "Apple engineers designed Safari to be secure from day one", forse avrebbero dovuto scrivere "Apple engineers designed Safari to be secure for day one."


[1] I due autori dei post citati hanno sistemi operativi in inglese e non hanno sperimentato gli stessi problemi, il che mi fa pensare che probabilmente uno dei possibili motivi dei crash sia legato alla localizzazione dell'applicazione. Del resto Apple non sarebbe nuova a queste cose, tempo fa è stato trovato un baco che si manifestava durante la sincronizzazione degli iPod se non si aveva impostato il fuso orario di Cupertino!

Technorati Tags: ,

View blog reactions

Ajax Control Toolkit: nuova versione

È stata rilasciata una nuova versione dell'AJAX Control Toolkit, scaricabile da qui. Devo ancora provarla, però da qui ho letto alcune delle nuove feature.

Oltre ad aver risolto più di 125 bug, sembra interessante il nuovo controllo ToolkitScriptCombiner, il supporto alle animazioni introdotto in alcuni controlli del toolkit, e altro ancora.

Per approfondimenti:

Technorati Tags: ,

View blog reactions

Posted: Jun 09 2007, 11:15 AM by lucab | with no comments
Filed under: ,
Come avere lo spell checker in italiano per Windows Live Writer

wlwspellcheckerQualche giorno fa è uscito Windows Live Writer Beta 2. Purtroppo per chi, come me, scrive in italiano, non esiste una versione localizzata in italiano. Lo spell checker non è disponibile e neanche visibile nel menù.

Un post di paperino spiegava un piccolo hack per utilizzare lo spell checker in italiano, che però non ero riuscito a far funzionare.

Oggi ho letto questo post di Simone Chiaretta, il quale mi ha chiarito la situazione. In pratica lo spell checker viene disattivato se la culture di sistema non è en-US. La soluzione c'è, come spiegato qui: bisogna scaricarsi questo helper e lanciarlo (c'è pure il codice sorgente).

Mettendo insieme le due cose, sono riuscito ad ottenere lo spell checker in italiano[1], in attesa di una versione localizzata.

A lato un ritaglio dello spell checker in italiano in azione.

Riassumo i passaggi:

  1. Procurarsi dei dictionaries in italiano con formato di tipo Sentry (ad esempio, quelli di Macromedia Freehand)
  2. Rinominare i due file ssceit2.clx e ssceit.tlx  rispettivamente in ssceam2.clx e ssceam.tlx
  3. Copiare i file così rinominati nella cartella dei dictionaries di WLW (tipo \Program Files\Windows Live Writer\Dictionaries)
  4. Scaricare l'helper di cui sopra, scompattarlo (ricordandosi di annullare il blocco) e copiare il file WLWSCL.exe nella cartella dell'eseguibile di Windows Live Writer
  5. Lanciare WLWSCL.exe per aprire Windows Live Writer con lo spell checker in italiano

Sembra funzionare (utilizzo Windows Vista Business in italiano) ed è comodo.

Technorati Tags: ,

View blog reactions


[1] In realtà devo ancora risolvere per le parole accentate...
Posted: Jun 07 2007, 06:17 PM by lucab | with 2 comment(s)
Filed under:
Programmer Personality Test

Ho fatto anche io il test, come Tiziana. Probabilmente qualcosa di vero c'è, soprattutto se guardo ai difetti ...

Su UGIdotNET hanno anche fatto delle statistiche.

Questo comunque il mio risultato:

Your programmer personality type is:

DLSB

You're a Doer.
You are very quick at getting tasks done. You believe the outcome is the most important part of a task and the faster you can reach that outcome the better. After all, time is money.

You like coding at a Low level.
You're from the old school of programming and believe that you should have an intimate relationship with the computer. You don't mind juggling registers around and spending hours getting a 5% performance increase in an algorithm.

You work best in a Solo situation.
The best way to program is by yourself. There's no communication problems, you know every part of the code allowing you to write the best programs possible.

You are a liBeral programmer.
Programming is a complex task and you should use white space and comments as freely as possible to help simplify the task. We're not writing on paper anymore so we can take up as much room as we need.

Technorati Tags:

View blog reactions

Posted: Jun 07 2007, 11:16 AM by lucab | with 1 comment(s)
Filed under:
Maledetti crapware

Cosa sono i crapware? Se ne può trovare una definizione su Wikipedia, oppure qui un'altra descrizione.

Si tratta di quel software fornito in bundle con un hardware, ad esempio quando si compra un notebook, e che risulta (oltre che non richiesto) spesso inutile se non addirittura dannoso.

Ad esempio due giorni fa, scarto un notebook Acer Aspire (serie 5100), lo avvio per la prima volta e parte la procedura per l'installazione di Windows Vista Home Premium. Dopo circa mezz'ora (non sono stato a guardare) si arriva alla schermata in cui si chiede il nome utente e la password. Finalmente parte il sistema? Macché: comincia un'altra serie di installazioni di software, tra cui un antivirus in prova per 90 giorni e una serie di (in)utility, che porta via altri 10 minuti abbondanti. Il risultato finale al riavvio è la presenza di oltre 10 iconcine nella tray notification area. Magari sono pensate per aiutarmi (ma se non uso neanche quello che è di serie)!, ma intanto rallentano inevitabilmente l'avvio e alcune danno proprio errore (pannello ATI, ad esempio).

Allora altra ora persa a disinstallare alcuni di questi tool e poi via con le installazioni del software che voglio io. Tra questi Windows Live Messenger. Dopo averlo installato, lo lancio e prima ancora che provi a connettermi, sorpresa. Messaggio d'errore: Messenger ha smesso di funzionare.

Messenger ha smeso di funzionare

Parte così la ricerca automatica di una soluzione da parte di Windows Vista.

Messenger ha smeso di funzionare, ricerca di una soluzione

Dopo qualche secondo, ecco che compare un messaggio rassicurante in un fumetto che parte dalla tray notification area: la soluzione è stata trovata.

La soluzione è stata trovata

Però cliccandoci su, compare una finestra in cui è scritto che è impossibile visualizzare la soluzione (cliccare sull'immagine per ingrandirla).

Impossibile visualizzare la soluzione

Purtroppo non è la prima volta che questa cosa mi succede, credo che sia legato alla lingua (ossia che non succeda nella versione di Vista in inglese).

Allora mi sono messo a cercare su Internet e dopo aver googlato un po' ho trovato solo:

  • i soliti che ne approfittavano per sparlare di Vista, senza ovviamente risolvere il problema (ad esempio qui si consiglia di disinstallare Vista come soluzione definitiva!)
  • soluzioni poco convincenti, (tipo questa) come eseguire Live Messenger come amministratore (un po' esagerata e comunque nel mio caso non faceva altro che ritardare l'insorgere del problema a dopo la connessione) oppure escludere Live Messenger dal DEP o disabilitare quest'ultimo (anche in questo caso, che non ho provato, si tenterebbe solo di aggirare il problema, sarebbe consigliabile piuttosto abilitare il DEP)

Un po' incazzato e soprattutto convinto che il problema non fosse di incompatibilità tra Vista e Live Messenger, usandoli già entrambi da tempo su un altro PC, ho provato a visualizzare la soluzione, riavviando manualmente la ricerca di soluzioni di Vista. Ho provato persino a mettere l'inglese come prima lingua tra le opzioni di Internet Explorer e, ad un certo punto (ma non sono sicuro di come sia successo e se dipenda da cosa ho fatto io) sono riuscito a visualizzare la soluzione.

Soluzione per messenger

Come mi aspettavo, non c'era una soluzione disponibile in italiano, ma tra le lingue proposte c'era l'inglese.

nessuna soluzione in italiano

La soluzione proposta (cliccare sull'immagine per ingrandirla) individua l'errore proprio in uno di quei tool maledetti che ancora devo capire cosa faccia e che ho fatto l'errore di non disinstallare subito (un po' per curiosità, un po' per paura di perdere qualche driver con la disinstallazione).

sreenshot della soluzione

Il problema è dovuto all'incompatibilità tra Acer eData Security e Windows Live Messenger 8.1. A questa pagina del sito di Acer è spiegato come "File Transfer Encryption feature in eDataSecurity [...] causes a compatibility issue with Windows® Live™ Messenger 8.1.". In pratica 'sto coso si mette in mezzo e fa casino.

Sono proposti anche due rimedi, una patch o l'installazione della nuova versione. Manca all'appello un terzo rimedio: la disinstallazione completa del tool, che penso risolverebbe ugualmente il problema.

Ho installato Vista svariate volte su macchine diverse per lavoro ed ho potuto constatare la semplicità dell'installazione. Perché allora è impossibile acquistare un notebook solo con il sistema operativo (e magari con allegato il CD di questo) ed i driver necessari a farlo funzionare? Ci avrei messo sicuramente meno tempo.

Maledetti crapware.

 View blog reactions

Posted: Jun 06 2007, 01:12 AM by lucab | with no comments
Filed under:
Le API di Virtual Earth

Il 30 maggio scorso ho seguito un webcast in diretta di Mauro Rizzi dal titolo Virtual Earth API's - integrazione di mappe in siti Web (base). Si è trattato, come da programma, di un webcast di livello base sulle Application Programming Interface di Virtual Earth.

Virtual Earth è la piattaforma, giunta alla versione 5.0, alla base di Live Search, servizio di ricerca e mappatura on line. Tra le feature di questo servizio, oltre alle mappe stradali e quelle da satellite, c'è (dove disponibile) la visualizzazione bird's eye (volo d'uccello), con foto aeree molto suggestive. 

Nel corso del webcast è stato spiegato come integrare le mappe di Virtual Earth all'interno di siti web utilizzando Javascript. Su MSDN Magazine c'è anche questo articolo (in inglese) che tratta gli stessi argomenti.

Per poterne usufruire, anzitutto è necessario includere nella pagina (HTML o ASPX) le API, ossia l'insieme di classi Javascript con cui poter usufruire di Virtual Earth, attraverso il seguente tag script:

<script src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=5">
</script>

È oppurtuno, inoltre, inserire il meta tag seguente (compreso nel tag head) per consentire la corretta visualizzazione di tutte le mappe:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Ad esempio, per visualizzare la mappa del Giappone, con questa codifica i caratteri giapponesi saranno visualizzati correttamente.

La mappa vera e propria è rappresentata da un elemento div HTML che viene collegato ad un oggetto VEMap. In pratica all'interno del body si inserisce un elemento div, assegnandogli un id:

<div id="mappaVE"></div>

Poi con il seguente codice Javascript si crea un oggetto VEMap collegato all'elemento div inserito, specificandone l'id, ed in esso si carica la mappa:

<script>
    var map = new VEMap("mappaVE");
    map.LoadMap();
</script>

In questo modo sarà creata e caricata una mappa con tutti i valori di default.

Le dimensioni di default sono 600 px di larghezza per 400 px di altezza, mentre il posizionamento è absolute. Per modificare queste impostazioni, basta specificarle nello stile dell'elemento div, ad esempio:

<div id='myMap' style="position:relative; width:400px; height:300px;">
</div>

Le coordinate (latitudine e longitudine) del centro della mappa di default sono sul Nord America. Per caricare una mappa specifica è possibile utilizzare un oggetto VELatLong, indicandone espressamente le coordinate, ad esempio:

map.LoadMap(new VELatLong(40.8224663105625, 16.4207463591201));

NB: sarebbe meglio chiamare il metodo LoadMap dopo aver completato il caricamento della pagina, collegandolo all'evento onload dell'elemento body. Poiché il caricamento della mappa va a modificare il DOM, infatti, può causare errori nel browser (in particolare IE7) se le modifiche avvengono prima che tutto il DOM sia stato caricato. In pratica nel tag body si aggiunge:

<body onload="GetMap();">

 e in un tag script una funzione:

function GetMap() { 
    map = new VEMap('myMap'); 
    map.LoadMap(new VELatLong(41.049225, 16.921939), 10 ,'h' ,false);
}

I parametri di LoadMap, tutti opzionali, sono i seguenti:

    VELatLong le coordinate del centro della mappa
    zoom il livello di zoom, da 1 a 19 (default = 4)
    style

    lo stile della mappa: a=foto satellitare (aerial), r=mappa stradale (road - default), h=ibrida (hybrid), o=obliqua (bird's eye)

    fixed valore boleano (defalt = false) che indica se la mappa è fissa e non può essere modificata dall'utente
    mode specifica se la mappa deve essere caricata in 2D (deafult) o in 3D
    showSwitch valore booleano (default = true) che indica se l'utente vedrà visualizzato nel controllo dashboard associato alla mappa la possibilità di cambiarne la modalità (2D o 3D)

Prima di caricare la mappa si possono impostare alcune opzioni. Ad esempio, è possibile specificare il tipo di Dashboard che si vuole visualizzare, scegliendo tra normal (deafult), small e tiny, illustrati nella figura seguente.

dashboards

Ad esempio, per avere una Dashboard tiny, basta inserire la seguente riga di codice prima di LoadMap:

map.SetDashboardSize(VEDashboardSize.Tiny);

Una volta caricata la mappa, però, non è più possibile cambiare questa opzione, se non ricaricando la stessa mappa.

Ci sono altre opzioni, invece, che devono essere impostate solo dopo aver caricato la mappa (per non avere un errore Javascript del tipo "this.vemap control è nullo o non è un oggetto").
Queste opzioni potranno anche essere cambiate senza dover ricaricare la mappa.

Ad esempio, la scala con cui è visualizzata la mappa è rappresentata di default in miglia o yarde, ma se volessimo usare il sistema metrico decimale basterebbe inserire nel codice Javascript, dopo LoadMap, questa riga di codice:

map.SetScaleBarDistanceUnit(VEDistanceUnit.Kilometers);

Oppure per scegliere di non visualizzare affatto la Dashboard, cambiare il livello di zoom, lo stile di mappa, ecc.

Ci sono altre cose interessanti che è possibile fare una volta caricata la mappa, come aggiungere shape standard (pushpin per evidenziare punti sulla mappa, poligoni e polyline) o custom, shape layers, trovare informazioni, percorsi, ecc..

Di questo, però, ho intenzione di scrivere in un prossimo post. Prima di chiudere questo, però, volevo segnalare alcuni link utili sull'argomento.

Per iniziare ad utilizzare questi strumenti, si può partire da qui, dove si trovano i link a:

Per approfondimenti si può partire dalla sezione per sviluppatori Windows Live dedicata a Virtual Earth. In essa si trovano, tra l'altro, i link a forum e blog dedicati, nonché una gallery di applicazioni di Virtual Earth (ed un'altra qui).

View blog reactions

Congratulations! You are a Community Credit Winner!

Oggi mi è arrivata una e-mail da David Silverlight di Community-Credit in cui mi hanno detto che sono arrivato al decimo posto nella gara di maggio 2007 ed ho vinto l'orologio nella foto qui di fianco (il polso non è quello mio, deve ancora arrivarmi Wink).

La mail mi spiega anche come usarlo Smile:

All the numbers on the watch face have fallen to the bottom of the watch. When someone asks you for the time, just point to your watch and let them figure it out for themselves.

Come se non bastasse, riceverò oltre all'orologio una targa:

The award is a plaque that you can hang on your wall to show off to your peers that you helped the geeks in the development community.

Prize WinnerPertanto da oggi potrò anche esporre orgogliosamente il logo di Credit Winner Surprise:

You are also entititled to proudly display the Credit Winner logo on any site that has your name associated with it.

Che ho prontamente inserito nella colonna sinistra di questo blog.

Che altro dire ... non vedo l'ora di riceverlo! (son soddisfazioni anche queste Stick out tongue)

Technorati tags: ,

View blog reactions

Posted: Jun 02 2007, 01:08 AM by lucab | with 1 comment(s)
Filed under: