*************************************************************** Microsoft(r) SQL Server(tm) Notification Services 2.0 SP1 File Leggimi 8 maggio 2003 *************************************************************** (c) Copyright Microsoft Corporation, 2002-2003. Tutti i diritti riservati. Questo file contiene informazioni aggiuntive a complemento della documentazione di Microsoft SQL Server Notification Services. *************************************************************** CONTENUTO *************************************************************** 1.0 Introduzione 1.1 Miglioramenti apportati a Notification Services 2.0 SP1 1.2 Addendum al file Leggimi sul Web 1.3 Accesso alla documentazione di Notification Services 2.0 Installazione di SQL Server 2000 2.1 Requisiti hardware e software 2.2 Installazione di Notification Services 2.3 Esecuzione degli esempi di Notification Services 2.4 Disinstallazione di Notification Services 3.0 Aggiornamento delle applicazioni a Notification Services 2.0 SP1 4.0 Note sul prodotto e sulla documentazione 4.1 Risoluzione dei problemi: errori di protezione SSL 4.2 Disattivare l'istanza prima di eseguire NSControl Upgrade 4.3 Il metodo EventCollector.Write non restituisce un valore 4.4 Non utilizzare il recapito digest con batch di notifiche di grandi dimensioni 4.5 Nome dell'origine degli eventi non corretto nella documentazione 4.6 Risoluzione dei problemi: il programma di installazione viene completato ma Notification Services non viene installato 4.7 Nei messaggi di evento viene indicato che non è possibile trovare la DLL dei messaggi di evento 4.8 Il valore della chiave per crittografare gli argomenti è una stringa di caratteri 4.9 La disattivazione dei sottoscrittori comporta la disattivazione dell'istanza 4.10 I recapiti non riusciti a causa di errori di formattazione del contenuto non vengono registrati 4.11 Quando Notification Services viene eseguito in un cluster, i valori devono essere il nome del cluster 4.12 SP1: NSControl Create attiva il concatenamento della proprietà tra database; è necessario disporre di privilegi Sysadmin 4.13 SP1: scrittura di testo normale con il formattatore del contenuto XSLT 4.14 SP1: modifiche alla stored procedure NSDiagnosticFailedNotifications 4.15 Utilizzo di componenti personalizzati creati con la versione 1.1.4322 di .NET Framework * Le voci che iniziano con "SP1:" sono valide per Notification Services 2.0 SP1, ma non per le versioni precedenti. *************************************************************** 1.0 Introduzione *************************************************************** Notification Services 2.0 SP1 è una release completa di Notification Services. Gli utenti di Notification Services 2.0 possono installare Notification Services 2.0 SP1 affiancata a quella esistente, quindi aggiornare le applicazioni. Per ulteriori informazioni sull'aggiornamento delle applicazioni, vedere la sezione 3.0. Qualora Notification Services 2.0 non sia già installato, è possibile installare e utilizzare Notification Services 2.0 SP1 per generare ed eseguire le applicazioni di notifica. ----------------------------------------------------------- 1.1 Miglioramenti apportati a Notification Services 2.0 SP1 ----------------------------------------------------------- * Il programma di installazione supporta .NET Framework versioni 1.0 e 1.1. * NSControl Create aggiunge più indici, fra cui un indice sulla tabella degli eventi al fine di migliorare le prestazioni di rimozione dei dati e un indice sulla tabella delle notifiche destinato a migliorare l'efficienza di elaborazione delle sottoscrizioni. * NSDiagnosticFailedNotifications ora restituisce un record per ogni errore di recapito di notifica (fatta eccezione per gli errori di formattazione del contenuto, come indicato nella sezione 4.10). * Il formattatore del contenuto XSLT standard può essere configurato per la scrittura di testo normale. Per ulteriori informazioni, vedere la sezione 4.11. * NSControl Create attiva il concatenamento della proprietà tra database per i database dell'istanza e dell'applicazione. Per ulteriori informazioni, vedere la sezione 4.12. * Se nel file di definizione dell'applicazione (ADF) vengono modificati i valori di o e quindi viene aggiornata l'applicazione tramite NSControl Update, la funzione Notify viene ricompilata per includere tali modifiche. * Quando si aggiungono, modificano o eliminano elementi nel nodo di una classe di notifica, quindi si procede all'aggiornamento dell'applicazione, NSControl aggiorna i protocolli senza ricreare per intero la classe di notifica. * L'applicazione di esempio Realtor viene ora eseguita su regole di confronto con distinzione tra maiuscole e minuscole. * La stored procedure NSEventFlushBatch è stata aggiornata per evitare potenziali blocchi critici (deadlock) in fase di inoltro degli eventi in multithreading. * Le stringhe di connessione di database sono state modificate per risolvere problematiche di connessione in sistemi operativi con l'impostazione internazionale Turco. * In Windows Server 2003, le applicazioni ASP.NET di gestione delle sottoscrizioni di esempio sono eseguite nel contesto di account NT AUTHORITY\NETWORK SERVICE. (Sotto altri sistemi operativi, continuano ad essere eseguite nel contesto dell'account ASPNET.) ------------------------------------ 1.2 Addendum al file Leggimi sul Web ------------------------------------ La documentazione più aggiornata per Notification Services 2.0 SP1 è disponibile nel sito Web del Servizio Supporto Tecnico Clienti Microsoft, all'indirizzo http://support.microsoft.com?kbid=818351. -------------------------------------------------------- 1.3 Accesso alla documentazione di Notification Services -------------------------------------------------------- La documentazione di Notification Services viene installata dal programma di installazione. È possibile installare la documentazione senza installare Notification Services e in questo modo si ha la possibilità di leggere le istruzioni di installazione e ottenere informazioni sulle opzioni disponibili prima di procedere all'installazione di Notification Services. I collegamenti alla documentazione in linea e ai file della documentazione scaricabili, tra cui il Global Documentation Pack, sono reperibili all'indirizzo http://go.microsoft.com/fwlink/?LinkId=16139. *************************************************************** 2.0 Installazione *************************************************************** Il programma di installazione di Notification Services consente di installare cinque set di componenti e un sottocomponente: * I componenti del motore, che eseguono le funzionalità di raccolta degli eventi, nonché di generazione, formattazione e recapito delle notifiche. Durante lo sviluppo delle applicazioni basate sulla scalabilità, questi componenti devono essere installati su tutti i server che eseguono un provider di eventi hosted, un generatore o un distributore. * I componenti client, che devono essere installati nei server che ospitano provider di eventi indipendenti e applicazioni di gestione delle sottoscrizioni. Tali componenti contengono le interfacce utilizzate dai provider di eventi indipendenti e applicazioni per comunicare con Notification Services. Anche l'utilità NSControl utilizzata per amministrare un'istanza di Notification Services viene installata insieme ai componenti client. * Il sottocomponente Inoltro di massa degli eventi, che deve essere installato insieme ai componenti client se si desidera effettuare l'inoltro dei dati XML. * I componenti di database, che devono essere installati in tutti i server di database che ospitano i database dell'istanza e dell'applicazione. I componenti di database comprendono stored procedure estese utilizzate per generare le notifiche. * La documentazione, che può essere installata in qualsiasi posizione per accedere alla documentazione di Notification Services. * Un set di applicazioni di esempio utili per acquisire familiarità con Notification Services. Le applicazioni di esempio possono essere eseguite dall'ambiente Microsoft Visual Studio(r) .NET. È possibile installare tutti i componenti in un server o su server diversi, a seconda delle necessità. --------------------------------- 2.1 Requisiti hardware e software --------------------------------- Prima di installare Notification Services, assicurarsi che il computer soddisfi i seguenti requisiti: IMPORTANTE: prima di installare il motore e i componenti client di Notification Services, è necessario installare .NET Framework versione 1.0 o 1.1. Per installare versioni successive di .NET Framework, è necessario installarle affiancate alla versione 1.0 o 1.1. IMPORTANTE: prima di installare i componenti del motore e di inoltro di massa degli eventi di Notification Services, è necessario installare SQLXML 3.0. Per installare versioni successive di SQLXML, non rimuovere SQLXML 3.0; effettuare l'installazione affiancata. Hardware per i componenti principali =============================================================== * Computer Minimo Pentium 450 MHz, si consiglia Pentium 733 MHz o superiore. * Memoria (RAM) Minimo 128 MB, si consiglia 256 MB o più. * Spazio su disco Componenti di Notification Services: 10 MB. Se i database vengono installati nello stesso server di Notification Services, è necessario ulteriore spazio disponibile su disco per le tabelle dei database, i file di log e le tabelle temporanee. Software per i componenti del motore =============================================================== * Sistema operativo Microsoft Windows(r) 2000 SP2 (o versioni successive), Windows XP Professional oppure Windows Server 2003. * Microsoft Data MDAC 2.6 o versioni successive, Access Components necessario per l'installazione di (MDAC) Microsoft .NET Framework e per Microsoft SQLXML. * Strumenti client Strumenti client di SQL Server 2000, SQL Server 2000 necessari per SQLXML. * Microsoft SQLXML SQLXML versione 3.0 (e relativi service pack). * .NET Framework .NET Framework versione 1.0 o 1.1 (e relativi service pack). Per ottenere .NET Framework, MDAC e SQLXML, visitare http://go.microsoft.com/fwlink/?linkid=7733. Software per i componenti client =============================================================== * Sistema operativo Microsoft Windows(r) 2000 SP2 (o versioni successive), Windows XP Professional oppure Windows Server 2003. * Microsoft Data MDAC 2.6 o versioni successive, Access Components necessario per l'installazione di .NET (MDAC) Framework. Necessario anche per SQLXML. * .NET Framework .NET Framework versione 1.0 o 1.1 (e relativi service pack). Software per il sottocomponente Inoltro di massa degli eventi =============================================================== * Strumenti di Strumenti client di SQL Server SQL Server 2000 necessari per SQLXML. * Microsoft SQLXML SQLXML versione 3.0 (e relativi service pack). Software per i componenti di database =============================================================== * SQL Server SQL Server 2000 Standard Edition, SQL Server 2000 Enterprise Edition, SQL Server 2000 Developer Edition oppure SQL Server 2000 Evaluation Edition SQL Server 2000 Desktop Engine (MSDE 2000), SQL Server 2000 Personal Edition e SQL Server 2000 CE Edition non sono supportati da Notification Services. Microsoft consiglia il service pack più recente per SQL Server 2000. Software per la documentazione =============================================================== * Browser Internet Microsoft Internet Explorer 5.01 o versione successiva. Software per le applicazioni di esempio =============================================================== * Strumenti di Tutti gli esempi vengono presentati sviluppo come soluzioni Visual Studio .NET con file di soluzione (con estensione sln). È possibile utilizzare gli esempi senza Visual Studio .NET. Tuttavia sarà necessario modificare i file con un editor di testo o un altro editor XML. * Internet Information È necessario che nel sistema in cui Services (IIS) vengono eseguiti gli esempi sia installato e in esecuzione Internet Information Services (IIS) 5.0 o versioni successive che include SMTP (Simple Mail Transfer Protocol), il servizio Pubblicazione sul Web e il servizio di amministrazione IIS. -------------------------------------------------- 2.2 Installazione di Notification Services 2.0 SP1 -------------------------------------------------- Note sull'installazione: * Per eseguire il programma di installazione di Notification Services è necessario che l'account utilizzato sia un membro del gruppo Administrators locale. Per installare i componenti di database è necessario che l'account utilizzato o l'account specificato durante l'installazione sia un membro del ruolo predefinito del server sysadmin di SQL Server. * È necessario eseguire l'installazione in locale. Non è disponibile una funzionalità di installazione remota. * Quando si installano i componenti di database, assicurarsi che il motore di database SQL Server 2000 sia in esecuzione. Il programma di installazione non eseguirà alcun tentativo di avvio di SQL Server. Istruzioni per l'installazione: 1. Se in precedenza sono stati installati gli esempi di Notification Services 2.0 è necessario rimuoverli utilizzando lo script RemoveSamplesDB.cmd, disponibile nella cartella 2.0.2114.0\Samples. (Per ulteriori informazioni, vedere la sezione 2.3.) 2. Eseguire il programma di installazione di Notification Services. Se il file del programma di installazione è stato scaricato, il suo nome è MSSQLNS20SP1...exe. 3. Nella schermata Installazione personalizzata, selezionare i componenti che si desidera installare. Verificare che il sistema soddisfi i requisiti software sopra indicati. Nel caso il sistema non soddisfi i requisiti per un particolare componente, non sarà possibile installare tale componente. Non è necessario intraprendere alcuna azione correttiva a meno che non si desideri installare un componente non disponibile. 4. Se si installano i componenti di database, immettere le informazioni aggiuntive necessarie nelle schermate Installazione componenti database e Informazioni account di accesso di SQL Server: * Se sono presenti più istanze del motore di database SQL Server, selezionare un'istanza nella schermata Installazione componenti database. È possibile installare i componenti in altre istanze tramite l'utilità InstallXPs. * Selezionare il tipo di autenticazione che si desidera utilizzare per l'accesso a SQL Server nella schermata Informazioni account di accesso di SQL Server. Immettere il nome utente e la password se si seleziona l'autenticazione di SQL Server. 5. Fare clic su Installa nella schermata Pronta per l'installazione del programma. Ulteriori istruzioni sull'installazione sono reperibili nella documentazione in linea di Notification Services. ------------------------------------------------------------ 2.3 Esecuzione degli esempi di Notification Services 2.0 SP1 ------------------------------------------------------------ Quando si installano le applicazioni di esempio, il programma di installazione aggiunge la cartella Vn.n.n.n\Samples contenente i file degli esempi. Lo script della riga di comando SetupSamples.cmd permette di configurare gli esempi. Per eseguire gli esempi è possibile utilizzare lo script della riga di comando RunSamples.cmd o Visual Studio .NET. Per ulteriori informazioni sulle applicazioni di esempio, consultare "Notification Services Programming Samples" nella documentazione in linea di Notification Services. NOTA: Notification Services 2.0 e Notification Services 2.0 SP1 sono dotati delle stesse applicazioni di esempio. Poiché le applicazioni utilizzano gli stessi nomi, non è possibile eseguire gli esempi affiancati in Notification Services 2.0 e SP1. Prima di eseguire gli esempi SP1, rimuovere le istanze delle applicazioni di esempio 2.0 tramite lo script RemoveSamplesDB.cmd, reperibile nella cartella v2.0.2114.0\Samples. L'eliminazione delle istanze delle applicazioni di esempio impedisce inoltre l'interruzione delle applicazioni di esempio alla disinstallazione di Notification Services 2.0. --------------------------------------------- 2.4 Disinstallazione di Notification Services --------------------------------------------- Per disinstallare Notification Services: 1. Dalla cartella vn.n.n.n\Samples eseguire RemoveSamplesDB.cmd per eliminare gli eventuali esempi che utilizzano la versione di Notification Services utilizzano la versione che si desidera rimuovere. 2. Interrompere tutte le istanze di Notification Services che utilizzano la versione che si desidera rimuovere. Per interrompere un'istanza, eseguire il comando seguente: net stop NS$ 3. Se si utilizza l'autenticazione di SQL Server, eseguire UninstallXPs.cmd per rimuovere i componenti di database. Il programma di disinstallazione non richiede l'immissione del nome utente e della password per SQL Server. È possibile fornire tali informazioni nello script UninstallXPs. 4. Fare clic su Installazione applicazioni nel Pannello di controllo. 5. Selezionare Microsoft SQL Server Notification Services 2.0 SP1 quindi fare clic su Rimuovi. 6. Seguire le istruzioni visualizzate sullo schermo. *************************************************************** 3.0 Aggiornamento delle applicazioni a Notification Services 2.0 SP1 *************************************************************** Per aggiornare le applicazioni esistenti di Notification Services a Notification Services 2.0 SP1, è necessario aggiornare le istanze che eseguono tali applicazioni. NOTA: negli esempi riportati di seguito viene illustrato come effettuare l'aggiornamento utilizzando l'autenticazione di Windows per la connessione a SQL Server. Se si utilizza l'autenticazione di SQL Server per la connessione a SQL Server, è inoltre necessario utilizzare gli argomenti -sqlusername e -sqlpassword per i comandi NSControl Disable, NSControl Enable, NSControl Upgrade e NSControl Register. Per aggiornare un'istanza che viene eseguita in un singolo server, con i database che risiedono nello stesso server o in un server remoto: 1. Installare Notification Services 2.0 SP1. Se l'istanza e il database si trovano su server diversi, è necessario installare i componenti del motore nel server dove viene eseguita l'istanza e i componenti di database in quello dove viene eseguito il database. Se si utilizzano più server di database, assicurarsi di installare i componenti di database in ognuno di essi tramite il comando InstallXPs come documentato in "Installazione dei componenti di database in istanze aggiuntive di SQL Server" della documentazione in linea di Notification Services. 2. Eseguire il backup dei database dell'istanza e dell'applicazione. Per ulteriori informazioni sul backup dei database, consultare la documentazione in linea di SQL Server. 3. È innanzitutto necessario che nel server che esegue l'istanza sia annullata la registrazione utilizzando la versione 2.0.2114.0 di NSControl: a. Fare clic su Start, scegliere Programmi\Microsoft SQL Server Notification Services (2.0.2114.0) e quindi fare clic su Prompt dei comandi di Notification Services per aprire una finestra del prompt dei comandi. b. Disattivare l'istanza. Esempio: nscontrol disable -name StockInstance c. Interrompere il servizio NS$. Esempio: net stop NS$StockInstance d. Annullare la registrazione dell'istanza. Esempio: nscontrol unregister -name StockInstance e. Se non si è già provveduto, disinstallare le applicazioni di esempio. Esempio: cd Samples RemoveSamplesDB f. Chiudere la finestra del prompt dei comandi. 4. È poi necessario registrare e aggiornare l'istanza utilizzando la versione Notification Services 2.0 SP1 di NSControl: a. Fare clic su Start, scegliere Programmi\Microsoft SQL Server Notification Services 2.0 SP1 e quindi fare clic su Prompt dei comandi di Notification Services per aprire una finestra del prompt dei comandi. b. Registrare l'istanza. Esempio: nscontrol register -name StockInstance -server ServerDB -service -serviceusername "dominio\nomeutente" -servicepassword "" c. Aggiornare l'istanza. Esempio: nscontrol upgrade -name StockInstance -server ServerDB d. Concedere all'account del servizio NS$ l'autorizzazione per eseguire le stored procedure estese SP1: Esempio: grantxpexec "dominio\nomeutente" e. Attivare l'istanza. Esempio: nscontrol enable -name StockInstance f. Avviare il servizio NS$. Esempio: net start NS$StockInstance Se l'istanza è basata su una soluzione di scalabilità, ovvero il servizio NS$, i provider di eventi indipendenti e le applicazioni di gestione delle sottoscrizioni sono eseguiti su più server, la procedura illustrata sopra deve essere applicata su un server, quindi l'istanza deve essere rimossa e registrata nuovamente su tutti gli altri server. Al termine dell'aggiornamento a SP1 di tutte le istanze, è possibile procedere alla disinstallazione di Notification Services 2.0.2114.0. Per le istruzioni sulle configurazioni di implementazioni comuni, scaricare il white paper "Upgrading Applications to Notification Services 2.0 SP1" (informazioni in lingua inglese) all'indirizzo http://go.microsoft.com/fwlink/?LinkId=16143. *************************************************************** 4.0 Note sul prodotto e sulla documentazione *************************************************************** Nelle sezioni seguenti vengono descritte alcune problematiche emerse dopo il completamento della documentazione in linea di Notification Services. ------------------------------------------------------ 4.1 Risoluzione dei problemi: errori di protezione SSL ------------------------------------------------------ Se vengono visualizzati errori di protezione SSL nel registro eventi quando si crea un'istanza o si esegue il servizio NS$, è possibile che Notification Services non sia in grado di connettersi a SQL Server 2000. Le possibili cause di questo errore sono le seguenti: * Se Certificate Server è installato in un computer Microsoft Windows 2000 e il nome dell'Autorità di certificazione (CA) è uguale a quello del nome host del computer o inizia con tale nome, è possibile che il tentativo di connessione a SQL Server 2000 abbia esito negativo. Per risolvere questo problema, installare il service pack più recente per SQL Server 2000. Per ulteriori informazioni, visitare http://support.microsoft.com?kbid=302409. * È possibile che il tentativo di connessione a SQL Server da Notification Services abbia esito negativo in presenza di una connessione di rete lenta al server di destinazione in cui è in esecuzione SQL Server oppure al server che gestisce l'autenticazione delle credenziali di Windows. Questo problema si verifica esclusivamente se nel computer che esegue SQL Server è installato un certificato SSL (Secure Sockets Layer) e se tale certificato SSL soddisfa i requisiti previsti per la crittografia. Per risolvere questo problema, seguire le istruzioni indicate nell'articolo della Knowledge Base 322144 all'indirizzo http://support.microsoft.com?kbid=322144. ------------------------------------------------------------- 4.2 Disattivare l'istanza prima di eseguire NSControl Upgrade ------------------------------------------------------------- Prima di eseguire NSControl Upgrade per aggiornare le istanze di Notification Services dall'edizione Standard all'edizione Enterprise, disattivare le istanze prima di disinstallare l'edizione Standard. Utilizzare la procedura seguente per eseguire un aggiornamento dall'edizione Standard all'edizione Enterprise: 1. Utilizzare il comando NSControl Disable per disattivare tutte le istanze che utilizzano l'edizione Standard. 2. Utilizzare il comando Net Stop per interrompere i servizi NS$ corrispondenti. 3. Disinstallare Notification Services Standard Edition. 4. Installare Notification Services Enterprise Edition. 5. Utilizzare NSControl Upgrade per aggiornare ogni singola istanza dall'edizione Standard all'edizione Enterprise. 6. Utilizzare NSControl Enable per attivare tutte le istanze aggiornate. 7. Utilizzare il comando Net Start per avviare i servizi NS$ corrispondenti. ------------------------------------------------------------ 4.3 Il metodo EventCollector.Write non restituisce un valore ------------------------------------------------------------ Nell'argomento relativo al metodo EventCollector.Write si indica che il metodo restituisce un valore integer. Il metodo EventCollector.Write non restituisce un valore. Le informazioni corrette per questo metodo sono le seguenti: [Visual Basic .NET] Public Function Write(ByVal As Object) [C#] public void Write(object ); [C++] public: void Write(Object* ); [JScript] public function Write( : Object); ------------------------------------------------------------ 4.4 Non utilizzare il recapito digest con batch di notifiche di grandi dimensioni ------------------------------------------------------------ Se si attiva il recapito digest per una classe di notifica tramite l'impostazione del valore su True nel file di definizione dell'applicazione (ADF), non impostare dimensioni personalizzate per il batch di notifiche nell'elemento . L'impostazione di un valore elevato per può causare un rapido aumento del numero di connessioni a SQL Server e quindi l'esaurimento della memoria disponibile. ----------------------------------------------------- 4.5 Nome dell'origine degli eventi non corretto nella documentazione ----------------------------------------------------- Gli eventi di Notification Services vengono registrati nel registro applicazione di Windows. Visualizzatore eventi di Windows indica l'origine degli eventi nel registro applicazione nella colonna Origine. Il nome dell'origine di tutti gli eventi di Notification Services è NotificationServices. Negli argomenti "Panoramica della registrazione degli eventi" e "Scelta degli strumenti di monitoraggio" si indica erroneamente che il nome dell'origine è NS$. ----------------------------------------------------------- 4.6 Risoluzione dei problemi: il programma di installazione viene completato ma Notification Services non viene installato ----------------------------------------------------------- Se quando si esegue il programma di installazione viene visualizzata immediatamente la pagina "InstallShield Wizard completata" con il messaggio seguente, è possibile che l'account utilizzato per l'esecuzione dell'installazione non disponga delle autorizzazioni necessarie: La procedura guidata è stata interrotta prima che Microsoft SQL Server Notification Services potesse essere installato completamente. Il sistema non è stato modificato. Per completare l'installazione in un secondo momento, eseguire di nuovo il programma di installazione. Verificare innanzitutto che l'account utilizzato per eseguire il programma di installazione disponga dei privilegi di amministratore locale. In caso affermativo, è possibile che il problema si verifichi in presenza delle due condizioni seguenti nel computer: * È presente il valore della chiave del Registro di sistema "DefaultAccessPermission" in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole. * Le autorizzazioni di accesso predefinite assegnate a Servizi componenti non includono l'account utilizzato per l'esecuzione del programma di installazione. Nota: per impostazione predefinita, il valore del Registro di sistema DefaultAccessPermission in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole non esiste. Questo valore viene creato da altre applicazioni oppure quando si utilizza lo strumento Servizi componenti per aggiungere gruppi o utenti alle autorizzazioni di accesso predefinite COM. Per aggiungere l'account utilizzato per eseguire il programma di installazione a Servizi componenti: 1. Fare clic su Start e scegliere Esegui. 2. Nella casella Esegui digitare Dcomcnfg.exe quindi fare clic su OK. 3. Visualizzare la scheda Protezione COM predefinita, seguendo le istruzioni valide per il sistema operativo in uso: * Nel sistema operativo Windows 2000 selezionare semplicemente la scheda Protezione predefinita. * Nel sistema operativo Windows XP eseguire la procedura seguente: a. Passare a Servizi componenti\Computer\Risorse del computer. b. Fare clic con il pulsante destro del mouse su Risorse del computer e quindi scegliere Proprietà. c. Selezionare la scheda Protezione COM Predefinita. 4. Scegliere il pulsante Modifica predefinite. 5. Fare clic su Aggiungi e aggiungere l'account utilizzato per eseguire il programma di installazione. ------------------------------------------------------------- 4.7 Nei messaggi di evento viene indicato che non è possibile trovare la DLL dei messaggi di evento ------------------------------------------------------------- Se si installano più versioni di Notification Services in un computer e quindi si disinstalla una versione, è possibile che i messaggi di Notification Services nel registro eventi contengano il seguente testo, che indica che l'istanza non è in grado di trovare la DLL dei messaggi di evento. Impossibile trovare la descrizione dell'ID dell'evento ( #### )nell'origine ( NotificationServices ). Il computer locale potrebbe non disporre delle necessarie informazioni nel Registro di sistema o dei file DLL necessari per visualizzare messaggi da un computer remoto.... Il testo completo del messaggio di evento viene indicato dopo questo testo. Tuttavia, nel messaggio non è incluso il collegamento al contenuto Web per il messaggio di evento. Per risolvere questo problema, utilizzare NSControl Register per registrare nuovamente qualsiasi istanza di Notification Services che utilizza una versione installata. In questo modo viene corretto un puntatore alla DLL dei messaggi di evento. Per ulteriori informazioni, vedere "Ripetizione della registrazione di un'istanza" nella documentazione in linea di Notification Services. ------------------------------------------------------------ 4.8 Il valore della chiave per crittografare gli argomenti è una stringa di caratteri ------------------------------------------------------------ Per i comandi NSControl Create, NSControl Update e NSControl Register è disponibile un argomento "argumentkey" facoltativo che consente di specificare il valore della chiave utilizzata per crittografare gli argomenti relativi al canale di recapito e al provider di eventi. Il valore della chiave deve essere una stringa di caratteri. Se la stringa include spazi, racchiuderla tra virgolette. Per ulteriori informazioni, vedere l'argomento "Configurazione della crittografia degli argomenti" nella documentazione in linea di Notification Services. ---------------------------------------------------- 4.9 La disattivazione dei sottoscrittori comporta la disattivazione dell'istanza ---------------------------------------------------- Se si utilizza il comando NSControl Disable per tentare di disattivare solo i sottoscrittori di un'istanza, il comando NSControl disattiverà l'intera istanza e tutte le applicazioni ospitate dall'istanza. Per risolvere questo problema, utilizzare uno dei due metodi seguenti: * Dopo aver disattivato i sottoscrittori, riattivare tutti gli altri componenti dell'istanza tramite il comando NSControl Enable: nscontrol enable -n -distributor -events -generator -subscriptions * Nel comando per la disattivazione dei sottoscrittori aggiungere un altro componente da disattivare e quindi riattivare tale componente: nscontrol disable -n -generator -subscribers nscontrol enable -n -generator È possibile controllare lo stato dell'istanza tramite il comando NSControl Status: nscontrol status -n --------------------------------------------------------------- 4.10 I recapiti non riusciti a causa di errori di formattazione del contenuto non vengono registrati --------------------------------------------------------------- Se il recapito di una notifica non riesce a causa di un errore di formattazione del contenuto, ad esempio un file XSLT non valido, la notifica non viene registrata come non riuscita. Questa situazione origina i seguenti possibili errori: - Il registro di distribuzione, visualizzabile da NSNotificationDistribution, non include le notifiche non riuscite a causa di errori di formattazione del contenuto. - La stored procedure NSDiagnosticNotificationClass indica che alcune notifiche non riuscite non sono state ancora recapitate (nella colonna NotificationsNotYetDelivered) poiché il registro di distribuzione non contrassegna le notifiche come non riuscite. --------------------------------------------------------------- 4.11 Quando Notification Services viene eseguito in un cluster, i valori devono essere il nome del cluster --------------------------------------------------------------- Quando si crea un'applicazione di Notification Services, è necessario specificare dove vengono eseguiti il distributore, il generatore e il provider di eventi hosted. A tale scopo, specificare i valori per l'elemento in ogni nodo , e nel file di definizione dell'applicazione (ADF). NSControl carica questi dati nel database dell'applicazione. All'avvio, il servizio NS$ stabilisce dove viene eseguito (il suo nome host), quindi confronta questo valore con quello per ogni distributore, provider di eventi hosted e generatore. Se il nome host corrisponde al valore , il servizio avvia il componente. I componenti senza corrispondenza vengono messi nello stato di attivazione in sospeso. Il servizio stabilisce il proprio nome host come indicato di seguito: * Nel caso di server non inclusi in un cluster, il nome host è semplicemente il nome del computer. * Nel caso di server inclusi in un cluster, il nome host è il nome del cluster (non il nome del nodo o del server virtuale). Pertanto, quando si esegue Notification Services in un cluster, è necessario impostare i valori sul nome del cluster. --------------------------------------------------------------- 4.12 SP1: NSControl Create attiva il concatenamento della proprietà tra database; è necessario disporre di privilegi Sysadmin --------------------------------------------------------------- SQL Server 2000 SP3 è dotato di nuove opzioni per la configurazione del concatenamento della proprietà tra database. Quando si installa SP3, per impostazione predefinita il concatenamento della proprietà tra database viene disattivato per tutti i database utente. Dopo l'installazione, è possibile attivare il concatenamento della proprietà tra database per i singoli database utilizzando la stored procedure di sistema sp_dboption. Un'istanza di Notification Services utilizza due o più database: un database dell'istanza e uno o più database dell'applicazione. Perché le stored procedure di Notification Services possano accedere agli oggetti presenti nei database dell'istanza e dell'applicazione, questi database richiedono il concatenamento della proprietà tra database. Quando si esegue NSControl Create, NSControl tenta di attivare il concatenamento della proprietà tra database per i database dell'istanza e dell'applicazione. Se i database di SQL Server 2000 sono anteriori a SP3, i comandi di concatenamento della proprietà tra database vengono ignorati. Solo i membri del ruolo predefinito del server sysadmin possono configurare il concatenamento della proprietà tra database. Di conseguenza, NSControl attiva il concatenamento della proprietà tra database solo se viene eseguito da membri del ruolo del server sysadmin. Un utente che sia membro del ruolo predefinito del server dbcreator può eseguire NSControl Create, ma il concatenamento della proprietà tra database non verrà attivato per i database dell'istanza e dell'applicazione. Pertanto, se si esegue NSControl Create, ma non si è membri del ruolo del server sysadmin, prima di poter eseguire l'istanza di Notification Services è necessario che un membro del ruolo del server sysadmin attivi il concatenamento della proprietà tra database per il database dell'istanza e per ogni database dell'applicazione. Ulteriori informazioni sul concatenamento della proprietà tra database sono disponibili nella documentazione in linea di SQL Server 2000 (Aggiornato - SP3). Di seguito viene descritto il concatenamento della proprietà tra database: - Compatibilità con le versioni precedenti per il concatenamento della proprietà tra database - Utilizzo dei concatenamenti di proprietà - sp_dboption - Impostazione delle opzioni di configurazione La documentazione in linea di SQL Server 2000 (Aggiornato - SP3) è disponibile per il download all'indirizzo http://go.microsoft.com/fwlink/?LinkId=16144. ------------------------------------------------------------ 4.13 SP1: scrittura di testo normale con il formattatore del contenuto XSLT ------------------------------------------------------------ In Notification Services 2.0, il formattatore del contenuto XSLT scriveva sempre XML validi. Di conseguenza, scriveva i seguenti caratteri come i loro riferimenti a entità: > (>), < (<), ' ('), " (") e & (&). In SP1, il formattatore del contenuto XSLT può scrivere testo normale, ovvero converte i riferimenti a entità nei loro equivalenti di caratteri. È possibile configurare l'output del testo tramite l'elemento xsl:output: Questo esempio si riferisce al file "NoOp.xslt" con il metodo di output impostato su testo e con l'aggiunta di testo a mostrare la conversione dei riferimenti alle entità: Today's Notifications: Le modifiche apportate in SP1 alterano la formattazione dell'output XML. Per impostazione predefinita, il formattatore del contenuto XSLT scrive XML senza ritorni a capo o rientri. Per far rientrare automaticamente XML è possibile utilizzare l'attributo "indent" dell'elemento "xsl:output". Se i dati degli eventi contengono caratteri riservati o riferimenti alle entità, è importante tenere presente quanto segue: * Se i dati degli eventi contengono riferimenti alle entità o frammenti XML, impostare l'attributo DisableEscaping del formattatore del contenuto su true per evitare che il formattatore trasformi eccessivamente i dati (convertendo ad esempio & in &amp;). * Se i dati degli eventi contengono caratteri riservati (ad esempio &), impostare l'attributo DisableEscaping del formattatore del contenuto su false in maniera che il formattatore converta i caratteri riservati in XML valido prima della trasformazione finale. Per ulteriori informazioni sull'elemento xsl:output, fare riferimento alla seguente pagina in MSDN Online: http://go.microsoft.com/fwlink/?LinkId=16145. ----------------------------------------- 4.14 SP1: modifiche alla stored procedure NSDiagnosticFailedNotifications ----------------------------------------- In Notification Services 2.0, la stored procedure NSDiagnosticFailedNotifications non restituiva le notifiche non riuscite. Il problema è stato risolto in Notification Services 2.0 SP1. NSDiagnosticFailedNotifications restituisce una riga per ogni tentativo di recapito non riuscito. Se una singola notifica non riesce più volte, nel set dei risultati vengono inserite più righe per quella notifica. Si noti che le colonne nel set dei risultati sono cambiate. Sono state aggiunte le due colonne seguenti: - DeliveryRequestTime - SentTime DeliveryRequestTime indica l'ora in cui il distributore ha consegnato la notifica al protocollo di recapito. Il valore compare solo se l'opzione di registrazione del distributore è "true" nel file ADF. SentTime indica l'ora in cui il protocollo di recapito ha riportato lo stato di recapito della notifica. Si noti che nel report sono indicate tutte le notifiche non riuscite con un valore SentTime compreso tra i valori StartDateTime e EndDateTime specificati al momento dell'esecuzione di NSDiagnosticFailedNotifications. Sono state rimosse le due colonne seguenti: - NumberOfDeliveryAttempts - LastFailureTime La documentazione relativa alla stored procedure aggiornata è disponibile nel sito Web del Servizio Supporto Tecnico Clienti Microsoft all'indirizzo http://support.microsoft.com?kbid=818352. ----------------------------------------------------------- 4.15 Utilizzo di componenti personalizzati creati con la versione 1.1.4322 di .NET Framework ----------------------------------------------------------- Notification Services 2.0 SP1 è realizzato utilizzando la versione 1.0.3705 di .NET Framework. Per impostazione predefinita, Notification Services tenta di caricare e utilizzare questa versione. Se un componente personalizzato viene realizzato con la versione 1.1.4322 di .NET Framework, viene caricata anche questa versione. Nel momento in cui Notification Services e il componente utilizzando versioni diverse di .NET Framework, le differenze nelle librerie di classi possono dar luogo a errori dell'applicazione, quali ad esempio: * 2009: Notification Services failed to instantiate the event provider. * 6005: The assembly does not contain the required content formatter class. Per risolvere questi errori è necessario realizzare i componenti personalizzati con la versione 1.0.3705 di .NET Framework. A tale scopo, aggiungere al percorso dei riferimenti per il progetto dei componenti la directory contenente gli assembly 1.0.3705. Nel caso in cui sia necessario realizzare i componenti personalizzati con la versione 1.1.4322 di .NET Framework, è possibile forzare Notification Services a utilizzare la stessa versione. A tale fine, aggiungere un nodo al file NSService.exe.config che si trova nella cartella vN.N.N.N\Bin di Notification Services. Nell'esempio riportato di seguito viene riprodotto il file con il nodo : Gli elementi restringono le versioni di .NET Framework che Notification Services può utilizzare. L'ordine delle versioni elencate determina l'ordine con il quale Notification Services tenta di caricare le versioni di .NET Framework. Nell'esempio, Notification Services tenterà di caricare per prima la versione 1.1.4322 di .NET Framework. Se non fosse disponibile, Notification Services tenterebbe con la versione 1.0.3705. Affinché le modifiche apportate a NSService.exe.config diventino effettive, è necessario riavviare il servizio NS$.