July 2004 Blog Posts

Proprieta' con diversa accessibilita' in VB.NET 2002 e 2003

Paul Vick in questo blog svela come mai le versioni 2002 e 2003 di VB.NET non hanno le proprieta' con diverso livello di accessibilita' (opzione disponibile in VB e C# 2005).Il motivo: Perche' i progettisti di C#, a suo tempo, non hanno voluto inserirle... :-(  

posted @ Tuesday, July 20, 2004 11:33 PM | Feedback (1)

.NET Framework 2.0 Beta1 (Code coverage edition)

E' disponibile la versione "Code coverage" del .NET Framework 2.0 Beta1.Questa versione contiene un engine che controlla quali parti del .NET Framework state usando maggiormente e trasmette queste info ad un database centrale affinche' Microsoft, analizzando,possa ottimizzare e migliorare le parti del framework piu' utilizzate.

posted @ Tuesday, July 20, 2004 11:29 PM | Feedback (1)

Perchè VB.NET non ha ++?

Vista la presenza di "+=" ci si domanda spesso perchè VB.NET non abbia il "++", Eric Lippert ne spiega il motivo .

posted @ Monday, July 19, 2004 9:05 PM | Feedback (0)

C-Sharpener For VB - Why Switch? (reloaded)

Dopo la segnalazione di Matteo , per par-condicio credo valga la pena leggere la replica di Carl Franklin. :-)W .NET!  

posted @ Tuesday, July 13, 2004 7:10 PM | Feedback (1)

Event Marshaling

Scenario: Avete una classe, la quale ha un metodo che attraverso un thread (oppure usando un delegate e BeginInvoke, EndInvoke) svolge alcune operazioni asincrone, all'interno di questo thread volete generare degli eventi, e all'interno di questi eventi volete aggiornare l'interfaccia utente.Il problema sta nel generare l'evento nel thread principale per non costringere chi usa la vostra classe a usare ISyncronizeInvoke per effettuare il marshaling della chiamata.Ecco la soluzione:  Public Class Test  '//Definisco l'evento  Public Delegate Sub MyInvoker(ByVal Value As Int32)  Public Event Progress As MyInvoker  Private mThread As Thread   Public Sub DoItInAnotherThread()   mThread = New Thread(AddressOf Count)   mThread.Start()  End Sub   Private Sub Count()   '//Recupero il field associato al mio evento (NomeEvento+[Event])   Dim...

posted @ Tuesday, July 13, 2004 5:09 PM | Feedback (1)

E' un bug Microsoft?

Direttamente dalla KB Microsoft... ;-) http://support.microsoft.com/?kbid=261186http://support.microsoft.com/?kbid=178748 http://support.microsoft.com/?kbid=276304http://support.microsoft.com/?kbid=145675http://support.microsoft.com/?kbid=303969

posted @ Tuesday, July 13, 2004 8:29 AM | Feedback (4)

Masterizzare da .NET

Visto che sembra un problema molto 'sentito' ecco un componente (scritto in C#) che permette di aggiungere le funzionalita' di masterizzazione alla vostra applicazione .NET.Funziona solo con sistemi operativi XP e Windows Server 2003.

posted @ Monday, July 12, 2004 9:31 AM | Feedback (2)

Direct Download delle versioni Express

Sono ora disponibili i links per il download diretto delle versioni Express.

posted @ Saturday, July 10, 2004 10:11 AM | Feedback (4)

Attributi DebuggerDisplay e DebuggerBrowsable

Ieri Raffaele ha mostrato come personalizzare i DataTips di Visual Studio 2005 usando gli attributi DebuggerDisplay e DebuggerBrowsable.Se vi venisse voglia di provarli, fatelo in C# per in VB 2005 non funzionano...  

posted @ Friday, July 9, 2004 7:17 PM | Feedback (0)

Addin: Shell DOS all'interno di Visual Studio

Qui trovate un add-in che permette di avere una shell DOS come dockable window di Visual Studio 2003/2005.

posted @ Friday, July 9, 2004 1:37 PM | Feedback (0)

Happy Birthday UGIdotNET!

Anche il Whidbey Reloaded è andato "Sold out" e considerato che solo 6 erano le persone che avevano già partecipato al precedente Whidbey WorkShop direi che è stato un grande successo. La sala e Raffaele durante la sua sessione... Jay, Sean e Fabio alle prese col portatile...Dopo la sessione tenuta dai PM la sorpresa: Seppure con 3 giorni di anticipo abbiamo festeggiato il 3° compleanno di UGIdotNET, con relativa torta per tutti i partecipanti. Serviva un beta tester, e Fabio Santini si è offerto volontario ;-) A tutti i partecipanti è stata regalata la maglietta dell'evento... Ovviamente... XL! :-)  

posted @ Thursday, July 8, 2004 9:56 PM | Feedback (1)

Generics in VB 2005

Visual Basic 2005 offre il supporto totale ai generics, questo malgrado tutti (Microsoft inclusa) stanno indicando My come la novita' principale della prossima versione.Purtroppo trovare documentazione sui Generics in VB 2005 e' piuttosto difficile (Io stesso me li sono studiati usando le specifiche C#...)Finalmente ecco un articolo sui Generics diretto allo sviluppatore VB.

posted @ Thursday, July 8, 2004 8:47 AM | Feedback (0)

BootStrapper Manifest Generator

Su GotDotNet e' stato publicato un tool per la generazione di un bootstrapper all'interno del quale inserire i prerequisiti richiesti dalla nostra applicazione.Sebbene parte di questa funzionalita' sia gia' presente all'interno di Visual Studio 2005 questo tool vi permette di editare in maniera semplice ed intuitiva i files xml richiesti per aggiungere un componente all'interno del bootstrapper. Ecco i dettagli della versione iniziale: Ability to create Bootstrapper Packages for Visual Studio 2005 (Beta 1) Works on the .NET Framework SDK v2.0 (Beta 1) Ability to create MSBuild project files for building a Boostrapper, and build them.

posted @ Thursday, July 8, 2004 8:41 AM | Feedback (5)

Download diretto delle versioni Express di Visual Studio 2005

In questo blog Aaron Stebner indica come scaricare le versioni Express senza utilizzare il web downloader.

posted @ Tuesday, July 6, 2004 8:43 AM | Feedback (1)

Whidbey Watcher #29: A nice tab feature...

Quante volte vi siete ritrovati con parecchie tab di visual studio aperte e costretti a chiederne una per una in modo da visualizzare quella desiderata?Finalmente "Close All but this"!

posted @ Monday, July 5, 2004 11:52 PM | Feedback (0)

Differenze tra C# Express e C# 2005

A quanto pare C# Express e Visual C# 2005 sono praticamente identici a parte la mancanza nella versione Express di: Source control Add-ins Class Designer ClickOnce deployment Remote debugging Mobile development Unit testing Presumo che lo stesso valga per VB.NET...Considerato che, molto probabilmente, il prezzo delle versioni Express sara' irrisorio e che le versioni Express non avranno limitazione nel licensing delle applicazioni sviluppate, sicuramente avremo una nuova categoria di sviluppatori "Express". PS: Non so come ma sono finito nella pagina dei "buzz" di Visual Studio 2005, potenza dei blogs! ;-)

posted @ Saturday, July 3, 2004 2:10 AM | Feedback (0)

Obsolete APIs in version 2.0 (beta 1)

Qui trovate uno zip file con tutti i membri considerati obsoleti nella Beta1 del .NET Framework 2.0

posted @ Friday, July 2, 2004 11:54 PM | Feedback (0)

Tech-Ed 04: Writing faster managed code

La mia ultima sessione è "Writing Faster Managed Code".Peter Sollich mostra come lo stesso algoritmo, scritto in C# e in C++, gira più velocemente grazie alle tecniche di ottimizzazione del jitter.Lo speech prosegue descrivendo (in maniera appastanza 'newbies') il funzionamento del GC, questo perchè conoscere il funzionamento del GC è fondamentale per chi vuole scrivere codice .NET ottimizzato ed evitare gli errori tipici: Boxing, usare GC.Collect,Finalization...Ottimizzare significa anche non abusare dei files XML e considerare la possibilità di usare files binari come pure non abusare nell'uso di Reflection.L'uso di COM Interop e P/Invoke è un altra area dove possono esserci...

posted @ Friday, July 2, 2004 1:02 PM | Feedback (0)

Tech-Ed 04: Asyncronous Windows Forms

Chi sviluppa applicazioni windows forms sa che prima o poi per evitare il freezing della UI bisogna ricorrre ai threads, quello che molti non sanno (putroppo) e che quando si usano Threads bisogna porre molta attenzione al come si utilizzano i controlli windows forms perchè questi non sono thread-safe e non a caso nel framework 2.0 verrà generata un eccezione.Juwal Lowy mostra come utilizzare i delegates per invocare metodi in maniera asincrona e dall'esempio appare come la tecnica richieda un sacco di codice per un operazione banale come aggiornare una progressbar da un thread separato.Per evitare questo dalla versione 2.0...

posted @ Friday, July 2, 2004 11:20 AM | Feedback (0)

Tech-Ed 04: Visual Studio 2005 Debugger

Scott Nonnemberg è stato chiaro: Abbiamo preso i vostri feedback e li abbiamo implementati nel debugger di VS 2005Problema : VS 2003 ha troppe finestre di debug, infatti nella nuova versione è possibile conoscere tutte le info reltive ad un oggetto/variabile semplicemente posizionando il mouse sopra la variabile e cliccando il "+" che appare nell'intellisense.L'intellisense attuale è poco chiara: Non si capisce se un metodo è statico o di istanza, ed ecco ch in VS 2005 abbiamo le icone e l'intellisense nella watch window.Attualmente la finestra di debug è piena di informazioni duplicate e/o inutili (es. framework internal data), in...

posted @ Friday, July 2, 2004 10:06 AM | Feedback (0)

Tech-Ed 04: Code access security nelle Windows Forms Application

Altra sessione di Juwal Lowy, questa volta sulla CAS (Code Access Security) durante la quale lo speaker gioca col .NET Configuration Tool mostrando come modificare i livelli di sicurezza da applicare alle applicazioni .NET a seconda del proprio evidence.Il fatto di poter eseguire applicazioni in maniera 'sicura' anche se queste vengono da luoghi poco sicuri per definizione (Internet) è quello che sta alla base delle rich client application che con ClickOnce probabilmente avranno ruberanno un po di spazio alle applicazioni ASP.NET

posted @ Thursday, July 1, 2004 7:44 PM | Feedback (0)

Tutti i dettagli su SQL Server 2005 Express

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsse/html/sseoverview.asp

posted @ Thursday, July 1, 2004 7:41 PM | Feedback (0)

Tech-Ed 04: Meet the VB Team

Io, Andrea e Lorenzo abbiamo avuto il piacere passare un ora in sessione 'privata' con Jay Roxe e Paul Yuknewicz, PMs di VB.NET Abbiamo toccato discorsi interessanti e abbiamo anche riportato le lamentele che 'girano' tra i programmatori VB.Paul e Jay ci ha illustrato i piani di Microsoft per gli sviluppatori VB per i prossimi mesi e, se si realizzeranno, le novità faranno piacere a chi ha scelto VB.NET come linguaggio per la piattaforma .NET.Abbiamo avvisato Jay (è uno dei 2 PM che sarà al workshop del 8/7) di prepararsi perchè i partecipanti ai workshop UGIdotNET sono professionisti 'tosti' e lui non...

posted @ Thursday, July 1, 2004 6:00 PM | Feedback (3)

Tech-Ed 04: .NET Myths panel

Una sessione leggera ed interessante, ogni tanto ci vuole...Con David Chappell nella veste di Maurizio Costanzo e altri nomi "importanti" (tipo Juwal Lowy e Clemens Wasters) nella parte degli ospiti, si è parlato dei vari "Miti" che circondano .NET.Tra questiVB.NET e C# sono la stessa cosa.I Web Services sono la panacea di tutti i problemi dei nostri clientiLe applicazioni Web sono più semplici da distribuire rispetto alle applicazioni Smar Client.UDDI è utilissimo!Il codice unmanaged è più veloce di quello managed.Quello che è emerso dalla discussione è che questi miti in realtà non esistono, o meglio, vanno analizzati in un contesto...

posted @ Thursday, July 1, 2004 4:07 PM | Feedback (0)

Tech-Ed 04: ADO.NET v2.0

Dino inizia con uno spiritoso aneddoto sul fatto di cosa significa essere "Portoghese" in Italia (e voi capite che, da ieri, i Portoghesi sono poco simpatici qui in Olanda...) ADO.NET 2.0 è innovazione e non rivoluzione (e per chi ha un sacco di codice in ADO.NET 1.x è importante...)La feature preferita da Dino è RemotingFormat ovvero la possibilità di serializzare (veramente) in binario un dataset o datatable con un incremento di performance notevole (vedere sotto) e risparmi di CPU,Memoria e banda. La Datatable ora implementa IXmlSerializable e tutti i metodi al momento presenti solo nel Dataset, questo significa che, essendo serializzabile...

posted @ Thursday, July 1, 2004 1:19 PM | Feedback (0)

Tech-Ed 04: .NET Versioning

La sessione di Juwal Lowy (sono sicuro che molti di voi lo conoscono) è stata interessante e ha trattato un argomento che ci tocca da vicino: "Versioning". Si è parlato di private e public assemblies, come inserire le assemblies nella GAC (Drag&Drop, gacutil, .NET cfg tool) e come il .NET framework sceglie quale assembly utilizzare quando è presente sia localmente che nella GAC.carina la demo Binding Redirect e dell'opzione Codebase, che volendo ci permette di creare delle shared assemblies che non stanno sulla nostra macchina locale.Juwal ha mostrato un trick (al momento per C# only) per mettere nella GAC le nostre assemblies...

posted @ Thursday, July 1, 2004 1:16 PM | Feedback (25)

Tech-Ed 04: .NET & Diagnostics

La giornata di oggi inizia con una sessione sul debugging:Spesso non ce ne rendiamo conto ma Visual Studio ha un supporto al debugging veramente notevole, e la versione 2005 lo migliorerà ulteriormente.Dopo una carrellata sui vari listeners (da usare con le classi Debug e Trace) viene analizzato come attivare/disattivare le opzioni di Tracing agendo sul file di configurazione.Viene sconsigliato l'uso di OutputDebugString (questa gener una SEH exception intecettata dal kerner e copiata allinterno di shared memory mapped files)StackTrace è un altra classe, spesso dimenticata che può esserci utile per localizzare la fonte di una determinata eccezione.Alcuni metodi/attributi che possiamo usare...

posted @ Thursday, July 1, 2004 9:40 AM | Feedback (0)