gennaio 2007 Blog Posts
Ieri ho superato l'esame in oggeto con il punteggio di 980.La preparazione dell'esame l'ho fatta si può dire sviluppando con l'ottica di approfondire le novità del .NET 2.0 per le Windows Application e l'esame mi è sembrato avere questo spirito.
La domande infatti vertono molto sulle novità introdotte:-ClickOnce-BackgroundWorker e gestione thread in generale-Le nuove funzionalità di ado SQL Notification e gestione asincrona-La gestione delle stampe (con i componenti nativi del framework)-Costruzione di controlli custom (qundi gestione del painting e attributi)
I quesìit non sono prolissi e quindi il tempo non manca, quindi consiglio è quello di leggere bene la domanda prima di rispondere.
Dim wmiQuery, objWMIService, objPing, objStatus wmiQuery = "Select * From Win32_PingStatus Where Address = 'HostName'" Set objWMIService = GetObject("winmgmts:\\.\root\cimv2") Set objPing = objWMIService.ExecQuery(wmiQuery) For Each objStatus In objPing If objStatus.StatusCode = 0 Then msgbox(objStatus.ProtocolAddress) Else msgbox("Unreachable") End If Next Set wmiQuery = Nothing Set objWMIService = Nothing Set objPing = Nothing Set objStatus = Nothing
Ovviamente il codice può essere trasportato anche in applicazioni .NET
UPDATE:Come detto da Marco Minerva nel suo post:http://blogs.ugidotnet.org/marcom/archive/2007/01/25/68646.aspx
Se la necessità è solo quella di ricavare gli indirizzi IP il .NET Framework offre nativamente la classe System.Net.DNS.GetHostEntry
Se invece l'esigenza è di taglio più sistemistico e...
Se durante l'accesso ad un server terminal viene visualizzato il seguente errore:
Il computer remoto ha determinato la disconnessione della sessione a causa di un errore del protocollo di gestione delle licenze. Provare a riconnettersi al computer remoto o contattare l'amministratore del server.
e sul terminal sever viene registrato l'evento:
Event ID 1004: Terminal server cannot issue a client license.
le cause possono essere molteplici.
Nel mio caso il terminal sever Windows 2000 non riusciva a contattare il sever licenze terminal Windows 2003 e per risolvere il problema ho seguito le indicazioni del seguente articolo:Stabilire un server licenza Servizi terminal preferito in Windows 2000http://support.microsoft.com/kb/239107
Ma...
Per modificare le impostazioni di sincronizzazione dell'Ora Internet su un client autonomo XP o 2003 è possibile utilizzare la seguente chiave di registro:
HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\SpecialPollInterval
Per default questa è impostata a 604800 (7 giorni) per configurare, ad esempio, la sicronizzazione una volta al giorno impostare il valore 86400 (ovvero il numero di secondi in 24 ore).
Dopo aver modificato la chiave riavviare il servizio Ora di Windows e quindi aggiornare la sincronizzazione oraria in questo modo la successiva sincronizzazione avverrà dopo il numero di secodi impostato.
Maggiori informazioni al seguente link:http://technet2.microsoft.com/WindowsServer/en/library/a0fcd250-e5f7-41b3-b0e8-240f8236e2101033.mspx?mfr=true
Con l'installazione predefina degli SharePoint Services 3.0 viene utilizzato SQL Server 2005 Embedded Edition Service.Questa versione di SQL Server viene installata in: C:\WINDOWS\SYSMSI\SSEE\MSSQL.2005 e presenta le seguenti caratteritiche:
Supporta 2 GB RAM e 2 CPU.
Non ha limitazioni sulla grandezza del Database.
Non ha limiti sul numero di connessioni contemporanee.
Supporta la ricerca Full-Text.
E' possibile configurare l'instanza creata (NomeServer\MICROSOFT##SSEE) tramite SQL Server Configuration Manager e SQL Server Surface Area Configuration.
Non è possibile utilizzare SQL Server Management Studio per accedere all'istanza.
Non è possibile l'accesso remoto quindi non è possibile realizzare una Server Farm.
Ovviamente è possibile utilizzare SQL Server 2005 Express Edition al posto di SQL...
Se nelle operazioni fra date è necessario tenere conto dell'ora legale è possibile utilizzare il metodo ToLocalTime:
Si veda il seguente codice:
Dim date1 As DateTime = #10/29/2006 2:00:00 AM#
Console.WriteLine(date1.AddHours(2))Console.WriteLine(date1.AddHours(2).ToLocalTime)
Output:29/10/2006 4.00.0029/10/2006 5.00.00
Per sapere se una data cade nel periodo dell'ora legale è possibile utilizzare il metodo System.TimeZone.CurrentTimeZone.IsDaylightSavingTime
Si veda il seguente codice:
Dim date1 As Date = #10/28/2006 2:00:00 AM#Dim date2 As Date = #10/29/2006 4:00:00 AM#
Console.WriteLine(System.TimeZone.CurrentTimeZone.DaylightName)Console.WriteLine(System.TimeZone.CurrentTimeZone.GetDaylightChanges(2006).Start)Console.WriteLine(System.TimeZone.CurrentTimeZone.GetDaylightChanges(2006).End)
Console.WriteLine(System.TimeZone.CurrentTimeZone.IsDaylightSavingTime(date1))Console.WriteLine(System.TimeZone.CurrentTimeZone.IsDaylightSavingTime(date2))
Output:ora solare Europa occidentale26/03/2006 2.00.0029/10/2006 3.00.00TrueFalse
Ecco alcuni link utili sull'argomento:
Limit users to one remote sessionhttp://technet2.microsoft.com/WindowsServer/en/Library/da5367e2-b506-48e9-8533-f38c28ceb6611033.mspx
"Restrict Each User to One Session" Setting in Tscc.msc Does Not Workhttp://support.microsoft.com/kb/302883/en-us
Limiting a user's concurrent connections in Windows Server 2003, Windows 2000, and Windows NT 4.0http://support.microsoft.com/kb/237282/en-us
Utility Spotlight Limit Login Attempts With LimitLogin http://www.microsoft.com/technet/technetmag/issues/2005/05/UtilitySpotlight/default.aspx
Se in VS 2003 si crea una connessione ad un SQL Server 2005 utilizzando come provider Microsoft OLE DB Provider for SQL Server e tramite essa si cerca di creare un Dataset tipizzato trascinando una tabella si verifica il seguente errore:
Data Adapter Configuration Error
the wizard detected the following problems when configuring the data adapter for "TableName"
Details:Error in SELECT clause: expression near '['.Error in FROM clause: near '['Unable to parse query text.
Per evitare l'errore occorre utilizzare il provider SQL Native Client.
Per sostiture il dataset utilizzato da un report è possibile utilizzare la funzionalità Set Location del riquadro Field Explorer che consente di modificare la Current Data Source con quella specificata.
Nel caso in cui lo schema del nuovo DatSet differisca da quello di partenza sarà necessario indicare con quale DataTable sostituire ciascuna DataTable originale.
Se anche le DataColumn tra le tabelle non sono corrispondenti comparirà la dialog Map Fields che conentirà di riassegnare le DataColumn della nuova DataTable ai fileds del report.
A questo punto il report userà il nuovo DataSet anche se i nomi delle DataTable visualizzate il Field Explorer rimarranno quelle...