mario.deghetto

Visual Basic & .NET
posts - 123, comments - 19, trackbacks - 0

giovedì 4 febbraio 2010

Il mio nuovo libro “Le basi di dati spiegate a mia nonna”

E’ con vero piacere che vi annuncio l’uscita del mio quinto libro: “Le basi di dati spiegate a mia nonna”, edito da “Edizioni FAG Milano”. Il libro è composto da 384 pagine e costa 35,00 Euro. Questo libro è in un formato leggermente più grande rispetto ai miei libri precedenti e il carattere e la grafica sono ampiamente migliorati, consentendo così una leggibilità ancora migliore di prima.

Al più presto provvederò a creare una pagina con i riferimenti all’indice, agli argomenti trattati e a tutti gli esempi scaricabili, così da poter avere un’unica pagina di riferimento con tutti i contenuti fruibili gratuitamente.

Attenzione: non è il classico libro su ADO.NET e simili, ma piuttosto un libro che spiega in modo (spero) chiaro come si fa una corretta progettazione di un database relazionale. Un po’ di matematica e insiemistica (il meno possibile) e vari esempi. Spero che possa piacervi.

Eventuali feedback su errori, strafalcioni e inesattezze, ma anche richieste per una eventuale futura riedizione sono molto ben accetti (mario@deghetto.it).

La pagina di riferimento sul sito FAG è la seguente: http://www.fag.it/scheda.aspx?ID=31657

posted @ giovedì 4 febbraio 2010 17.23 | Feedback (0) |

mercoledì 3 febbraio 2010

Libro su VB 2010

Dal 1° Febbraio ho iniziato “ufficialmente” la scrittura del mio nuovo libro su Visual Basic 2010. Per il momento sto scrivendo il capitolo introduttivo e sto raccogliendo il materiale su tutte le novità che saranno introdotte da Visual Studio 2010 e da .NET Framework 4.0.

L’obiettivo (oltre che la correzione di un po’ di errori o inesattezze del precedente testo) è quello di estendere ancora di più gli argomenti trattati, aggiungendo nuovi capitoli e migliorando i capitoli esistenti, sulla base dei feedback che ho ricevuto dall’uscita del libro su VB 2008.

In termini quantitativi, mi pongo l’obiettivo di aumentare le pagine dalle 576 del libro precedente ad almeno 7-800. Tenendo conto del fatto che è anche aumentato il formato dei libri FAG, ho sufficiente spazio per trattare parecchi altri argomenti.

Vi invito a scrivermi in e-mail (mario@deghetto.it) segnalandomi l’ordine di preferenza degli argomenti che vorreste vedere nel nuovo libro. Per esempio:

1) Serializzazione

2) Sicurezza

3) Windows Azure

Grazie!

posted @ mercoledì 3 febbraio 2010 9.00 | Feedback (0) |

martedì 2 febbraio 2010

[VS 2010] Documentazione sulle novità di Visual Basic e di C#

Leggendo l’elenco delle novità che avremo con la nuova versione di Visual Studio (2010), ho trovato questa affermazione importante, come già espressa anche dal Team che si occupa dello sviluppo, che mi sembra il caso di segnalare ed evidenziare:

“In Visual Studio 2010, the Visual Basic and C# languages continue to evolve toward feature parity. This enables you to choose a language based on personal preferences because both languages are equally capable.”

Si afferma, quindi, che i linguaggi Visual Basic e C# continuano ad evolvere verso la parità delle loro caratteristiche e che questo ci porterà a scegliere un linguaggio solo in base alle personali preferenze, dato che entrambi i linguaggi hanno le stesse capacità.

La documentazione da cui ho tratto questa affermazione si trova qui: http://msdn.microsoft.com/en-us/library/dd547188(VS.100).aspx

Speriamo che nell’intento di uniformare i due linguaggi per elevarli allo stesso livello di dignità, anche Microsoft si accorga che Visual Basic non è più il “BASIC” inteso come linguaggio per principianti (beginners). Perché dico questo? Be’, provate a installare Visual Studio 2008 Express (si chiama Visual Studio anche la versione Express che include tutte le varie installazioni di VB Express, C# Express ecc.): passando con il mouse sulla voce “Visual Basic 2008 Express”, vedrete che sul lato sinistro appare la descrizione del linguaggio come un linguaggio adatto ai principianti. Se passate invece sulla voce “Visual C# 2008 Express” vedrete che è definito come linguaggio perfetto per i professionisti. Non è un controsenso?

posted @ martedì 2 febbraio 2010 16.54 | Feedback (0) |

lunedì 1 febbraio 2010

[ScreenCast] ADO.NET 2.0 Primo contatto … e seconda versione!

La prima versione dello screencast “ADO.NET 2.0 Primo Contatto” l’avevo creata con un prodotto free (CommunityClips). Purtroppo la versione free ha probabilmente qualche limitazione e/o richiede un codec specifico, per cui alcuni iscritti mi avevano informato che non si riusciva a vedere.

Cogliendo la palla al balzo (un balzo un po’ lento …) e grazie anche alla mia licenza CamTasia 6.01 “full”, ottenuta grazie alla nomina MVP (Thank you very much, TechSmith – http://www.techsmith.com/ !!), ho provveduto a rifare la registrazione con questo ottimo prodotto.

La registrazione risultante è un po’ più lunga di circa 3-4 minuti rispetto alla prima versione (in tutto sono circa 10 minuti), perché ho aggiunto anche qualche informazione in più, seppur restando nell’ambito di quanto illustrato nella prima versione.

La nuova versione si trova allo stesso indirizzo della precedente e cioè http://deghetto.wordpress.com/2008/10/25/screencast-adonet-20-primo-contatto/ per quanto riguarda il mio blog WordPress, mentre la versione sul portale VBT&T arriverà appena potrà essere sostituita quella precedente (ho appena richiesto la sostituzione, quindi … abbiate pazienza!).

Mi farete un grosso piacere a farmi sapere se questa versione funziona meglio, se ci sono dei difetti di registrazione e se la qualità della registrazione in generale è valida.

Per quanto riguarda i contenuti, spero che vi possano interessare, soprattutto a chi si approccia per la prima volta a questa tecnologia. Abbiate pietà per la qualità dell’esposizione, visto che questi sono i miei primi timidi passi verso gli ScreenCast (al momento trovo ancora abbastanza innaturale a parlare al computer, se non per indirizzargli insolenze e vituperi vari!).

Buona visione!    :-)

Nota: questo screencast non è nell’area webcast di DotNetWork perché l’ho registrato un bel po’ di tempo fa. Mi riprometto di rifarlo con un po’ di informazioni in più, nella nuova versione di Visual Studio 2010.

posted @ lunedì 1 febbraio 2010 21.15 | Feedback (0) |

Visual Studio 2010: il nuovo look

Mi riallaccio al post di Renato Marzaro proprio su questo argomento (http://community.visual-basic.it/renato/archive/2009/02/25/24984.aspx) per aggiungere qualche informazione che è possibile estrapolare dall’articolo segnalato e dai alcuni dei numerosi commenti che i lettori gli hanno inviato.

Jason Zander, General Manager di Microsoft per Visual Studio – Developer Division, ha pubblicato nel suo blog un articolo sulla nuova interfaccia visuale del futuro Visual Studio 2010 (http://blogs.msdn.com/jasonz/archive/2009/02/20/a-new-look-for-visual-studio-2010.aspx).

Potete vedere alcuni screenshot all’indirizzo che ho riportato qui sopra.

La cosa tra tutte più impressionante è il fatto che l’IDE di Visual Studio 2010 è stato riscritto interamente in WPF!

Un’altra caratteristica interessante che ha trovato parecchi consensi è la possibilità di sganciare la finestra di un documento e di spostarla su un altro monitor, qualora dovessimo avere la disponibilità di più monitor.

Nella barra a sinistra dell’editor di codice (quella dove clicchiamo per attivare dei breakpoint, per intenderci), avremo alcuni nuovi segnalini:

  • un triangolino nero, per indicare sezioni di codice che possono essere fatte collassare (come le Region)
  • un triangolino bianco, per indicare sezioni di codice collassate che possono essere ripristinate
  • delle barrette colorate per indicare quali righe di codice sono state modificate.

La finestra di dialogo New Project è stata ridisegnata con migliori funzionalità di ricerca, anteprima di template online e una navigazione più facile. Visual Studio mantiene la caratteristica multi-target, cioè la capacità di utilizzare versioni diverse del Framework .NET cioè 2.0, 3.0 e 3.5, con in più l’aggiunta della versione 4.0.

Ora c’è anche il nuovo Extension Manager per trovare e gestire più facilmente le estensioni a Visual Studio prodotte da terze parti (partner o anche appassionati).

Non è previsto in questo momento di estendere il supporto del Framework .NET 4.0 per Visual Studio 2008. Comunque, Visual Studio 2010, potrà essere installato senza problemi anche su Windows XP.

Al momento non è ancora stata fissata una data di rilascio della Beta 1 di Visual Studio 2010, ma il Team ci sta lavorando ed è probabile che sentiremo presto notizie in merito!

posted @ lunedì 1 febbraio 2010 21.09 | Feedback (0) |

#52: Aprire Expression Web da Visual Studio 2008

Nel mio post precedente (tip #50) ho spiegato come si configura un nuovo strumento esterno da Visual Studio 2008 per aprire direttamente Expression Blend sul progetto corrente. Expression Blend lavora su progetti WPF e quindi non può essere avviato con un progetto web o Windows Forms.

Per utilizzare Microsoft Expression con (pressappoco) gli stessi strumenti, anche su un progetto web, possiamo utilizzare Expression Web.

La configurazione è molto simile a quella che ho illustrato per Expression Blend, con qualche piccola variante. Anzi, a parte il titolo dello strumento esterno (Expression Web anziché Expression Blend), cambia solo il Comando:

  • C:\Program Files\Microsoft Expression\Web 2\WebDesigner\EXPRWD.EXE (per la versione a 32 bit)
  • C:\Program Files (x86)\Microsoft Expression\Web 2\WebDesigner\EXPRWD.EXE (per la versione a 64 bit).

Ecco qui la finestra di dialogo:

image

posted @ lunedì 1 febbraio 2010 21.08 | Feedback (0) |

#51: VB.NET – identificare modalità debug o release

Molti di voi sapranno che è possibile compilare un progetto o una soluzione di Visual Basic 2008 in due modalità distinte: DEBUG e RELEASE.

Nella modalità DEBUG vengono mantenuti i simboli interni, al fine di poter disporre di un riferimento di supporto alla verifica del codice inserito. Nella modalità RELEASE, invece, vengono eliminati tutti questi simboli e l’applicazione compilata è pronta alla distribuzione.

Distribuire un’applicazione in modalità DEBUG non solo è inutile ma è anche dannoso: infatti le informazioni possono essere utilizzate per un’operazione di reverse engineering per recuperare il nostro codice VB.NET, ma anche le prestazioni dell’applicazione ne possono risentire in senso negativo. E’ quindi importante, prima di distribuire un’applicazione, passare alla modalità RELEASE e ricompilare il progetto o la soluzione.

Premesso questo, talvolta è importante sapere se un assembly sia stato compilato in modalità DEBUG o RELEASE, per evitare di distribuire l’applicazione dimenticando il passaggio dalla modalità DEBUG alla modalità RELEASE.

Possiamo ottenere questo in modo estremamente semplice, con questi semplici passi:

  1. nella finestra Esplora Soluzioni, attivare il pulsante “Mostra tutti i file”;
  2. nel livello inferiore contenuto nel nodo “My Project” troveremo così il file AssemblyInfo.vb; aprire questo file per visualizzare il codice;
  3. in tale file troveremo una “istruzione” simile alla seguente:
    <Assembly: AssemblyTitle(“WindowsApplication2″)>
  4. commentare tale istruzione con il simbolo di apice oppure eliminare l’intera riga;
  5. inserire il seguente codice:
#If DEBUG Then
<Assembly: AssemblyTitle("MyApplication *** Debug ***")>
#Else
<Assembly: AssemblyTitle("MyApplication *** Release ***")>
#End If

A questo punto possiamo compilare in entrambe le modalità per ottenere gli eseguibili (exe) in entrambe le sottocartelle del progetto (debug e release).

Per verificare se un eseguibile (assembly) sia stato compilato in modalità DEBUG o RELEASE, possiamo semplicemente passare con il puntatore del mouse sopra al nome del file eseguibile nella finestra di Esplora risorse, come mostrato nella seguente figura:

Debug-Release

posted @ lunedì 1 febbraio 2010 21.07 | Feedback (0) |

#50: Aprire Expression Blend da Visual Studio 2008

Quando si lavora con un progetto di tipo WPF Application in Visual Studio 2008, potrebbe essere interessante passare a Microsoft Expression Blend (se installato sul nostro PC) per gestire in modo più flessibile la parte grafica dell’applicazione stessa.

Per chi non dovesse saperlo, Visual Studio 2008 permette di personalizzare il menu Strumenti, aggiungendo gli strumenti esterni che si preferiscono. Procederemo quindi alla personalizzazione dell’IDE di Visual Studio 2008 per aggiungere una voce Expression Blend.

Nota: per questo compito ho utilizzato Visual Studio 2008 Team System e Expression Blend 2, entrambi installati in Windows Vista Ultimate a 64 bit.

I passi da seguire sono questi:

  1. dal menu Strumenti, cliccare su Strumenti esterni
  2. nella finestra di dialogo che apparirà, fare clic sul pulsante Aggiungi
  3. nella casella Titolo inserire Expression Blend
  4. nella casella Comando inserire il percorso e il nome dell’eseguibile di Expression Blend (nel mio caso è C:\Program Files (x86)\Microsoft Expression\Blend 2\Blend.exe)
  5. nella casella Argomenti inserire $(SolutionDir)$(SolutionFileName)
  6. lasciare vuota la casella Directory iniziale
  7. fare clic sul pulsante Applica.

Questa procedura non solo permette di aprire Expression Blend ma, dopo aver aperto questa applicazione, apre il file XAML su cui stavamo lavorando in Visual Studio 2008.

La prima volta che utilizzeremo questa procedura, Expression Blend ci avvertirà che c’è un problema di sicurezza. Per evitare questo messaggio, possiamo spuntare la casellina che permette di non ricevere più il messaggio e confermare l’apertura del file.

Nota: il percorso del comando che è possibile trovare su Vista a 32 bit (installato sul portatile da cui sto scrivendo) è il seguente:

C:\Program Files\Microsoft Expression\Blend 2\Blend.exe

posted @ lunedì 1 febbraio 2010 21.06 | Feedback (0) |

[WPF] Un tutorial video di Corrado Cavalli su MSDN

Sul blog del Team di MSDN Italia è stata annunciata la pubblicazione di alcuni video di Corrado Cavalli sulla nuova piattaforma video MSDN.

Questa serie di video forma un tutorial su WPF (Windows Presentation Foundation). Ovviamente il tutorial è estremamente consigliato a cui volesse avvicinarsi a questa tecnologia, come anche a chi si è già avvicinato ma vuole imparare qualcosa di più, perché non c’è niente di meglio che poter vedere in pratica cosa si può fare e sentire la spiegazione dalla viva voce di uno dei più esperti italiani in materia.

I primi video pubblicati sono i seguenti, ma vi consiglio di dare sempre un’occhiata alla piattaforma video MSDN, perché ci saranno molte altre novità:

  • Introduzione a WPF
  • Nuovi concetti per lo sviluppatore Windows Forms (prima parte)
  • Nuovi concetti per lo sviluppatore Windows Forms (seconda parte)
  • Databinding
  • WPF nel mondo reale: architettura e pattern Model-View-ViewModel
  • posted @ lunedì 1 febbraio 2010 21.00 | Feedback (0) |

    #49: Leggere lo stato di un servizio con VB.NET

    Supponiamo di avere un’applicazione inserita nel menu “Esecuzione automatica” e che tale applicazione abbia la necessità di accedere automaticamente a un database collegato a un’istanza di SQL Server 2008 Express locale.

    Nel caso in cui il computer sia appena stato acceso, potrebbe verificarsi un ritardo di avvio del servizio di SQL SERVER e quindi potremmo ottenere un errore di connessione dalla nostra applicazione.

    Dobbiamo quindi verificare che il servizio MSSQL$SQLEXPRESS sia già stato avviato, così da permettere alla nostra applicazione di restare in attesa o, addirittura, di avviare il servizio prima di procedere alle operazioni programmate.

    Per verificare che il servizio sia stato avviato, possiamo utilizzare il seguente frammento di codice che include sia la direttiva di importazione dell’opportuno namespace, sia il codice del metodo che legge lo stato del servizio, sia il codice del metodo principale che testa il metodo di lettura dello stato.

    Imports System.ServiceProcess
    
    Public Class Form1
        Private Sub Button1_Click(ByVal sender As System.Object, _
                ByVal e As System.EventArgs) Handles Button1.Click
            Dim nomeServizio As String = "MSSQL$SQLEXPRESS"
            Dim risposta As Boolean = StatoServizio(nomeServizio)
            MessageBox.Show("Servizio " & nomeServizio & " = " & risposta)
        End Sub
        Private Function StatoServizio(ByVal nomeServizio As String) As Boolean
            Dim risultato As Boolean = False
    
            Dim mySCMs() As ServiceController
            mySCMs = ServiceController.GetServices()
    
            Dim mySCMTemp As ServiceController
    
            For Each mySCMTemp In mySCMs
                If mySCMTemp.ServiceName = nomeServizio Then
                    If mySCMTemp.Status = ServiceControllerStatus.Running Then
                        risultato = True
                    Else
                        risultato = False
                    End If
                    mySCMTemp.Close()
                    Exit For
                End If
            Next
            Return risultato
        End Function
    End Class

    Naturalmente è sufficiente cambiare il nome del servizio da verificare per avere la possibilità di conoscere lo stato (“Avviato” oppure no) di qualsasi servizio installato.

    Il significato dei valori della proprietà ‘Status‘ sono i seguenti:

    1 – Stopped = Il servizio non è in esecuzione

    2 – StartPending = Il servizio si sta avviando

    3 – StopPending = Il servizio si sta fermando

    4 – Running = Il servizio è in esecuzione

    5 – ContinuePending = Il servizio si sta riavviando

    6 – PausePending = Il servizio si sta ponendo in pausa

    7 – Paused = Il servizio è in pausa

    posted @ lunedì 1 febbraio 2010 20.59 | Feedback (0) |

    CodeProject: algoritmo delle 8 regine in VB.NET

    Come sicuramente sa chi ha studiato gli algoritmi (indipendentemente dal linguaggio utilizzato), uno dei problemi più interessanti è quello di trovare tutte le soluzioni del “problema delle 8 Regine”.

    Per chi non conoscesse il gioco degli scacchi, la Regina si può spostare orizzontalmente o diagonalmente per un numero di caselle pari alle caselle che trova libere, quindi anche da un’estremità all’altra della scacchiera. La scacchiera è formata da 8 x 8 caselle e su tale scacchiera devono poter trovare posto 8 Regine, senza che ciascuna Regina sia posta sulla stessa riga, sulla stessa colonna o sulla stessa diagonale di un’altra Regina.

    Su CodeProject è disponibile il codice sorgente di un programma scritto in VB.NET che risolve il problema delle 8 Regine: http://www.codeproject.com/KB/vb/EightQueensProblem.aspx.

    Il programma permette di visualizzare tutte le soluzioni possibili oppure di provare a trovare la propria personale soluzione.

    posted @ lunedì 1 febbraio 2010 20.31 | Feedback (0) |

    domenica 31 gennaio 2010

    Windows Azure e la scadenza dell’account gratuito

    Per chi non fosse stato informato o non si fosse accorto dei numerosi avvisi, l’account di Windows Azure fornito gratuitamente (CTP) scade oggi (ved. immagine qui di seguito):

    image

    Chi fosse interessato a mantenere l’account deve necessariamente passare a un account a pagamento.

    Se avete un abbonamento MSDN, verificate se avete un ulteriore periodo di benefit gratuito (salvo “sforamento” dei limiti previsti, oltre i quali si paga per la parte eccedente).

    Personalmente non ho voluto usufruire dell’ulteriore possibilità di utilizzo gratuito e quindi da domani farò nuovamente a meno di Windows Azure.

    posted @ domenica 31 gennaio 2010 17.02 | Feedback (0) |

    sabato 30 gennaio 2010

    Uno scambio di e-mail sugli esempi del mio libro su VB 2008

    Con l’autorizzazione di Stefano (che non vuole essere citato anche con il cognome), pubblico uno scambio di e-mail tra me e lui su un problema che ha riscontrato nell’eseguire gli esempi del mio libro su VB 2008.

    Non capisco ancora come mai lui non sia riuscito a utilizzare gli esempi così come sono, soprattutto per il fatto che è incorso in errori già nei primi esempi, quelli semplici senza particolari controlli visuali e senza particolari tecniche di programmazione (il classico “Hello World”…).

    Comunque se qualcuno dovesse avere lo stesso problema, utilizzando VB 2005, con le informazioni incluse in questo “scambio” dovrebbe risolvere.

    In ogni caso, può essere interessante la soluzione con la modalità di compilazione a riga di comando che in certi casi può essere molto utile.

     

    1-Stefano) Buongiorno.
    Intanto complimenti per il suo libro "Visual Basic 2008 spiegato a
    mia nonna": il linguaggio è davvero "frendly" e i primi 4 capitoli sono
    "volati" via velocemente...
    Sono alle prime armi con la programmazione e mi trovo già in difficoltà:
    ho scaricato e salvato (in C) i primi 2 file d'esempio ma non riesco ad utilizzarli.
    Utilizzo un pc con Windows XP home ed sp3 e Visual basic 2005 express edition.
    Come indicato nel suo libro ho modificato il file di soluzione con blocco note,
    inserendo ".... ,Format Version 9.0", ma VB2005ExEd mi restituisce l'errore in
    allegato (veda error1.jpg). Sono entrato nel file .vbproj ma non riesco a
    capire cosa modificare: forse il progetto non è supportato da VB2005ExEd?
    Devo necessariamente installare la versione 2008 express edition?
    Eventualmente è possibile utilizzare il compilatore interno (vbc.exe)?
    Grazie fin d'ora per le informazioni che potrà darmi.
    Cordiali saluti.

    2-Mario) Buongiorno!
    Grazie per i complimenti, mi fa piacere sapere che i miei libri vengono apprezzati :-)
    Venendo al problema, credo che dipenda dall'indicazione del Framework .NET 3.5.
    Aprendo il progetto (per esempio il file Cap02_01.vbproj) si dovrebbero sostituire
    tutte le voci "3.5" con "2.0", per esempio nei tag
    "<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>"
    oppure  in "<RequiredTargetFramework>3.5</RequiredTargetFramework>".
    Mi sembrava di averli testati anche con VB 2005 e quindi mi appare strano di
    vedere indicato il Framework .NET 3.5, ma evidentemente li ho modificati prima
    della pubblicazione.Mi scuso per questo disguido...
    In quanto alla versione di VB Express, consiglio vivamente a tutti di passare
    alla versione 2008 perché contiene molte nuove caratteristiche molto interessanti.
    Ovviamente è un requisito minimo indispensabile per fruire correttamente degli
    esempi del libro.
    Tra qualche mese uscirà la versione 2010, per cui ti consiglio (vivamente!) di
    scaricare e di installare appena disponibile la versione Express in italiano
    (verso Maggio-Giugno, credo).
    Ho giusto ieri concordato con l'editore di partire con la scrittura del nuovo libro
    su questa versione, per documentare tutte le novità che usciranno.
    Colgo l'occasione per segnalare che il mio blog su VB T&T è chiuso e quindi si
    può fare riferimento ai blog indicati qui sotto, in firma.
    Fammi sapere se cambiando il riferimento al Framework .NET hai risolto...

    3-Stefano) Non ho risolto.In allegato trovi i file così come li ho modificati.
    Sbaglio in qc...ma cosa?
    Ps.Il salto alle versioni più aggiornate mi costringerà a una sostituzione del pc
    ... e comunque la mia macchina è effettivamente piuttosto datata...
    Grazie. Saluti.
    [ allegato: Cap02_01.vbproj]

    4-Mario) Mi sembra a posto e quindi non saprei proprio perché non si apre, anche perché di
    solito bisogna cambiare solo il file di soluzione (.sln), mentre i file di progetto
    restano uguali, se non ci sono delle caratteristiche relative a Framework diversi.
    Potresti provare a creare una soluzione vuota, aggiungendo poi il progetto,
    oppure creare un progetto e poi aggiungere i form dei miei esempi...

    5-Stefano) Ok . Verificherò meglio anche negli altri file, altrimenti partirò da
    progetti nuovi: ciò che è essenziale è "capire" il codice.
    Se ci saranno sviluppi ti farò sapere, intanto ancora grazie della disponibilità.

    6-Stefano) Ho provato a sostituire TUTTE le voci "3.5" con "2.0" modificando TUTTI
    i file che compongono il progetto (li ho aperti ad uno ad uno, individuando per
    ognuno di essi la voce 3.5 e sostituendola), ma la prova è fallita lo stesso.
    Ho avuto un riscontro interessante perseguendo quell'altra strada, cioè quella
    del compilatore interno a Windows. Attraverso esso sono riuscito a processare e
    a ottenere il mio meritato "Ciao mondo". Ecco come ho fatto:
    A) ho aggiunto nel file Form1.vb
    come prima istruzione il seguente imports:
    Imports System.Windows.Forms
    Public Class Form1
    ...
    AA) poi ho creato un file Compila.txt dentro la cartella contenente il progetto
    allo stesso livello dei file vb
    B) ho scritto le seguenti due righe dentro il file Compila.txt:
    set PATH=%PATH%;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
    vbc /reference:Microsoft.VisualBasic.dll,System.dll,System.Windows.Forms.dll /out:Form1.exe /main:Form1 *.vb
    C) ho rinominato Compila.txt in Compila.bat
    D) ho fatto doppio click su Compila.bat
    Basta attendere qualche secondo:il compilatore, elabora e genera il file
    Form1.exe
    E) con un doppio click si avvia il debug e appare la message box di Ciao Mondo!.
    Credo che le cose si spieghino più o meno così:
    - Con la prima riga si dice a Windows dove andare a cercare il file vbc.exe
    - Con la seconda si compilano tutti i file vb per farne un unico eseguibile Form1.exe.
    - Con la direttiva /reference indichiamo al compilatore di includere le librerie
    del VB.NET che stanno alla base di ogni eseguibile (quando compiliamo con l'IDE
    ci pensa lui ad includerle) e la direttiva /main con la quale
    specifichiamo quale è la classe che avvierà il programma..
    Ho trovato diverse informazioni all'indirizzo: http//msdn.
    microsoft.com/it-it/library/ms229597.aspx
    e decisiva è stata una "dritta" passatami dall'amico Alessandro..
    Per dirla tutta ho provato a processare altri esempi del libro: spesso la
    procedura fallisce e le motivazioni mi rimangono più o meno sconosciute.
    Forse questa è una modalità per utenti avanzati, oppure
    per chi, per vari motivi, non può installare sulla propria macchina l'IDE.
    Alla fine io sono passato alla 2008 express edition e per ora il mio vecchio PC
    sta reggendo bene.

    posted @ sabato 30 gennaio 2010 5.48 | Feedback (0) |

    martedì 26 gennaio 2010

    CodeProject: l’uso di token nei documenti Office

    Segnalo un altro interessante articolo per l’uso di token nei documenti Office, pubblicato su CodeProject a questo indirizzo:

    http://www.codeproject.com/KB/office/OfficeTokenReplacement.aspx

    Immaginate questo scenario: avete dei documenti Word e volete integrare tali documenti con i dati provenienti da un database. Un tipico esempio è il caso di una fattura prodotta in formato Word.

    Ovviamente in questo caso non vogliamo utilizzare la stampa unione di Word, anche perché tale modalità permette, sì, di stampare anche una singola fattura, ma richiede all’operatore qualche manovra in più che potrebbe non saper fare e quindi vogliamo automatizzare il più possibile tutto il processo.

    L’unica particolarità che il documento Word deve contenere, oltre al testo fisso, è un insieme di uno o più “token“, cioè un “gettone”, un segnalino. Ognuno di questi token corrisponderà a un’unità elementare di dato, allo stesso modo dei codici di campo di Word per la stampa unione.

    Il codice presentato è in Visual Basic .NET ed è adatto sia all’uso con MS Office (versione 2007), sia con OpenOffice (versione 2.4 e successive).

    posted @ martedì 26 gennaio 2010 5.11 | Feedback (0) |

    CodeProject: Upgrade da VB6 a VB.NET

    Segnalo un articolo abbastanza interessante sulla migrazione da VB6 a VB.NET, pubblicato su CodeProject al seguente indirizzo:

    http://www.codeproject.com/KB/vb/VB6ToVBNET.aspx

    L’articolo affronta alcuni aspetti che possono dare dei problemi durante la migrazione e in particolare quelli riguardanti le seguenti aree:

    • l’uso di Visual Studio 2008 Upgrade Wizard
    • cambio del Framework .NET di riferimento
    • cancellare il report generato automaticamente durante l’upgrade
    • correzione degli errori
    • codice riguardante l’uso delle stringhe, degli operatori logici e per la gestione dei file
    • DoEvents

    E’ un breve testo in inglese, ma potrebbe essere una sufficiente base per iniziare a testare la migrazione di un semplice progetto VB6 verso VB.NET.

    posted @ martedì 26 gennaio 2010 5.10 | Feedback (0) |

    Powered by: