Estensione di esempio per il recapito a una stampante

Data aggiornamento: 5 dicembre 2005

Printer Delivery Sample è un'estensione di esempio per il recapito che illustra alcune caratteristiche della funzionalità di recapito di Reporting Services. L'esempio è costituito da una semplice estensione per il recapito a una stampante e utilizza l'estensione per il rendering IMAGE con lo spazio dei nomi System.Drawing.Printing di Microsoft .NET Framework per recapitare un report a una stampante. Questo esempio non è supportato nei sistemi operativi basati su processori Itanium.

Gli esempi di SQL Server non vengono installati automaticamente durante l'installazione. Per informazioni sulle procedure di installazione degli esempi, vedere Installazione degli esempi.

ms160778.note(it-it,SQL.90).gifImportante:
Gli esempi vengono offerti esclusivamente a scopo didattico. Non sono progettati per l'utilizzo in un ambiente di produzione e non sono stati testati in un ambiente di produzione. Microsoft non fornisce servizi di supporto tecnico per questi esempi. Le applicazioni e gli assembly di esempio non devono essere connessi o utilizzati con il database di SQL Server o il server di report in un ambiente di produzione senza l'autorizzazione dell'amministratore di sistema.

Requisiti

Per utilizzare l'esempio Printer Delivery, è necessario avere familiarità con Visual Studio e Microsoft Visual C#. Il sistema deve inoltre soddisfare i requisiti seguenti:

  • Microsoft Visual Studio 2005
  • Microsoft .NET Framework versione 2.0
  • Gli esempi di Reporting Services.
  • Un server di report per cui si dispone di autorizzazioni di accesso in rete, se si intende utilizzare l'estensione di esempio per aggiungere ulteriori funzionalità di elaborazione dati al server.

Percorso

L'esempio è disponibile nella sottodirectory Extension Samples\PrinterDelivery Sample della directory degli esempi di Reporting Services.

Ad esempio:

C:\Program Files\Microsoft SQL Server\90\Samples\Reporting Services\Extension Samples\PrinterDelivery Sample

Generazione dell'esempio

Eseguire la procedura seguente per generare l'esempio.

Se non è stato ancora creato un file di chiave con nome sicuro, generare il file di chiave seguendo le istruzioni seguenti.

Per generare un file di chiave con nome sicuro

  1. Aprire il prompt dei comandi di Microsoft Visual Studio 2005. Fare clic sul pulsante Start, scegliere Tutti i programmi, Microsoft .NET Framework SDK 2.0, quindi SDK Command Prompt.

    -- oppure --

    Aprire il prompt dei comandi di Microsoft .NET Framework. Fare clic sul pulsante Start, scegliere Tutti i programmi, Microsoft .NET Framework SDK 2.0, quindi SDK Command Prompt.

  2. Utilizzare il comando CD (change directory) per passare dalla directory corrente della finestra del prompt dei comandi alla cartella in cui sono stati installati gli esempi.

    [!NOTA] Per determinare la cartella in cui si trovano gli esempi, fare clic sul pulsante Start, scegliere Tutti i programmi, Microsoft SQL Server 2005, Documentazione ed esercitazioni, quindi Samples. Se è stato utilizzato il percorso di installazione predefinito, gli esempi si troveranno in <unità_sistema>:\Programmi\Microsoft SQL Server\100\Samples.

  3. Al prompt dei comandi digitare il comando seguente per generare il file di chiave:

    sn -k SampleKey.snk

    ms160778.note(it-it,SQL.90).gifImportante:
    Per ulteriori informazioni sulla coppia di chiavi con nome sicuro, vedere l'argomento relativo ai nomi sicuri e alla protezione in .NET Framework nel centro per sviluppatori di .NET su MSDN.

Per compilare l'esempio mediante .NET Framework SDK

  1. Copiare Microsoft.ReportingServices.Interfaces.dll dalla directory \bin del server di report alla cartella degli esempi. Per impostazione predefinita, Microsoft.ReportingServices.Interfaces.dll è incluso nella sottodirectory \Reporting Services\ReportServer\bin dell'istanza installata di Reporting Services. Il percorso esatto può variare in base al percorso di installazione di Reporting Services. Ad esempio:

    C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager\Bin
    
  2. Per creare l'estensione di esempio per il recapito Microsoft.Samples.ReportingServices.PrinterDeliverySample.dll, eseguire il comando seguente.

    csc /t:library /out:Microsoft.Samples.ReportingServices.PrinterDeliverySample.dll *.cs /r:Microsoft.ReportingServices.Interfaces.dll
    

Per compilare l'esempio mediante Visual Studio

  1. Aprire il file della soluzione di esempio (PrinterDeliveryCS.sln o PrinterDeliveryVB.sln) in Visual Studio.

  2. In Esplora soluzioni selezionare il progetto PrinterDelivery.

  3. Scegliere Aggiungi riferimento dal menu Progetto.

    Verrà visualizzata la finestra di dialogo Aggiungi riferimento.

  4. Fare clic sulla scheda .NET.

  5. Fare clic su Sfoglia e individuare il file Microsoft.ReportingServices.Interfaces.dll nell'unità locale. Per impostazione predefinita, l'assembly è disponibile in C:\Programmi\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin. Fare clic su OK.

    Il riferimento selezionato verrà aggiunto al progetto.

  6. Scegliere Genera soluzione dal menu Genera.

Distribuzione dell'esempio

Dopo aver completato i passaggi precedenti, è possibile distribuire Microsoft.Samples.ReportingServices.PrinterDeliverySample.dll a un server di report e a Gestione report e utilizzarlo per il recapito dei report.

Per distribuire l'esempio

  1. Copiare Microsoft.Samples.ReportingServices.PrinterDeliverySample.dll sul server di report. Il percorso predefinito delle estensioni del server di report è C:\Programmi\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin.

  2. Nell'elemento <Delivery> del file RSReportServer.config immettere la voce seguente.

    <Extension Name="Printer Delivery Sample" Type="Microsoft.Samples.ReportingServices.PrinterDelivery.PrinterDeliveryProvider,Microsoft.Samples.ReportingServices.PrinterDeliverySample">
       <Configuration>
          <Printers>
             <Printer>\\Server\MyNetworkPrinter1</Printer>
             <Printer>\\Server\MyNetworkPrinter2</Printer>
             <Printer>MyLocalPrinter</Printer>
          </Printers>
       </Configuration>
    </Extension>
    

    [!NOTA] L'elemento <Printers> ha lo scopo di attivare un set fisso di nomi di stampante per l'impostazione Printer dell'estensione per il recapito. Questo elenco viene verificato in base all'elenco di stampanti conosciute e disponibili sul server di report in cui viene installata l'estensione per il recapito. Se la stampante selezionata non è presente nell'elenco delle stampanti conosciute e installate sul server di report, il recapito ha esito negativo e viene visualizzato un messaggio di errore che informa che la stampante in questione non è installata sul server. Se l'account del servizio Windows utilizzato dal server di report non dispone dell'autorizzazione necessaria per stampare su una stampante installata in Windows, la stampante non è inclusa nell'elenco delle stampanti disponibili.

  3. Copiare l'assembly in Gestione report. Il percorso predefinito delle estensioni per Gestione report è C:\Programmi\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager\bin.

  4. Nell'elemento <DeliveryUI> del file RSWebApplication.config immettere la voce seguente.

    <Extension Name="Printer Delivery Sample" Type="Microsoft.Samples.ReportingServices.PrinterDelivery.PrinterDeliveryUIProvider,Microsoft.Samples.ReportingServices.PrinterDeliverySample"/>
    

Per ulteriori informazioni sulla distribuzione delle estensioni per il recapito, vedere Deploying a Delivery Extension.

Per configurare la protezione per l'accesso al codice dell'esempio

  1. Aprire il file di configurazione dei criteri del server di report (rssrvpolicy.config). Il percorso predefinito del file è C:\Programmi\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer.

  2. Le estensioni per il recapito devono avere attendibilità totale. A questo scopo, aggiungere le informazioni del gruppo di codice seguenti di seguito all'elemento CodeGroup … Zone="MyComputer" />:

    <CodeGroup class="UnionCodeGroup"
       version="1"
       PermissionSetName="FullTrust"
       Name="PrinterDeliveryCodeGroup"
       Description="Code group for my delivery extension">
          <IMembershipCondition class="UrlMembershipCondition"
             version="1"
             Url="C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin\Microsoft.Samples.ReportingServices.PrinterDeliverySample.dll"
           />
    </CodeGroup>
    
  3. Se si utilizza l'estensione di esempio per il recapito a una stampante in Gestione report, ripetere i passaggi 1 e 2 utilizzando il file di configurazione dei criteri di Gestione report (rsmgrpolicy.config) e il gruppo di codice seguente:

    <CodeGroup class="UnionCodeGroup"
       version="1"
       PermissionSetName="FullTrust"
       Name="PrinterDeliveryCodeGroup"
       Description="Code group for my delivery extension">
          <IMembershipCondition class="UrlMembershipCondition"
             version="1"
             Url="C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager\bin\Microsoft.Samples.ReportingServices.PrinterDeliverySample.dll"
           />
    </CodeGroup>
    

    Il percorso predefinito del file rsmgrpolicy.config è C:\Programmi\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager.

  4. Dopo aver distribuito l'esempio, reimpostare Microsoft Internet Information Services (IIS) mediante l'apposito strumento Iisreset.exe e riavviare il servizio Windows per Reporting Services.

    Per ulteriori informazioni sulla protezione .NET e su Reporting Services, vedere Understanding Code Access Security in Reporting Services.

Vedere anche

Attività

Compilazione ed esecuzione degli esempi di codice
Esempi di SQL Server Reporting Services

Altre risorse

Utilizzo del controllo RSClientPrint in applicazioni personalizzate
Estensioni di esempio (Reporting Services)
Implementing a Delivery Extension

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

5 dicembre 2005

Contenuto modificato:
  • Modifica delle istruzioni per la generazione di un file di chiave, inclusi il nome e il percorso del file di chiave.