Condividi tramite


Uso di Windows Installer con un Terminal Server

Le operazioni seguenti possono influire sulle installazioni di Windows Installer quando si usa un server terminal. Gli sviluppatori di installazione devono sempre verificare che il pacchetto di Windows Installer venga installato come previsto quando gli utenti usano anche un server terminal.

  • Nei sistemi operativi precedenti a Windows Server 2008 e Windows Vista, i criteri di sistema EnableAdminTSRemote devono essere impostati per consentire agli amministratori di eseguire installazioni nella sessione client. A partire da Windows Server 2008 e Windows Vista, il criterio EnableAdminTSRemote non ha più alcun effetto. Indipendentemente dall'impostazione, gli amministratori e i non amministratori possono eseguire un'installazione nella sessione client o nella sessione della console. Gli amministratori e i non amministratori possono sempre eseguire installazioni di Windows Installer nella sessione della console.
  • Windows Installer impedisce l'installazione nel contesto di installazione per utente se il criterio di sistemaDisableUserInstalls è impostato su 1. In questo caso, il programma di installazione ignora tutte le applicazioni registrate come per utente e cerca solo le applicazioni registrate in base al computer.
  • Quando un amministratore esegue un'installazione in una sessione client di un server terminal ospitato in Windows 2000, l'installazione deve usare un percorso UNC e non una lettera di unità mappata.

Gli sviluppatori devono rispettare le linee guida seguenti durante lo sviluppo di un componente Windows Installer che può essere usato con un server terminal.

  • Scrivere tutte le informazioni del Registro di sistema HKCU nella parte HKCU\Software del Registro di sistema.
  • Non è consigliabile archiviare le informazioni di configurazione nei file INI.
  • Scrivere informazioni per utente nel Registro di sistema quando l'applicazione viene eseguita per la prima volta e non al momento dell'installazione. Se è necessario scrivere informazioni per utente nel Registro di sistema in fase di installazione, separare le informazioni per utente e per computer in componenti di Windows Installer diversi. Creare il pacchetto in modo che il programma di installazione non tenti di convalidare e ripristinare i componenti contenenti informazioni per utente quando viene installata l'applicazione.
  • Un pacchetto usato solo per le installazioni per computer deve scrivere variabili di ambiente nell'ambiente del computer includendo * nella colonna Nome della tabella dell'ambiente. Se il pacchetto può essere usato per installazioni per utente o installazioni per computer, usare due componenti. Includere il componente per utente nella tabella dei componenti e immettere le impostazioni utente nella tabella ambiente. Includere il componente per computer nella tabella dei componenti e immettere le impostazioni del computer nella tabella ambiente. Controllare quale componente viene installato usando istruzioni condizionali basate sulla proprietà ALLUSERS nel campo Condition della tabella dei componenti.
  • Quando si eseguono installazioni per computer da un server terminal, il programma di installazione scrive le variabili di ambiente per utente in HKCU\. Ambiente predefinito\. Poiché il server terminal non replica questa sezione del Registro di sistema, l'installazione non imposta le variabili di ambiente per utente.
  • Poiché un server può essere configurato per impedire agli utenti di ripristinare le applicazioni, l'applicazione deve gestire correttamente il caso delle chiavi del Registro di sistema mancanti.

Di seguito viene applicato quando un pacchetto di Windows Installer che usa azioni personalizzate DLL, EXE o Script viene installato nel contesto di installazione per computer in un server terminal. In questo caso, il programma di installazione imposta la proprietà TerminalServer .

  • Le azioni personalizzate posticipate vengono eseguite nel contesto del sistema locale, a meno che l'azione non abbia l'attributo msidbCustomActionTypeTSAware . Ciò vale anche se l'azione personalizzata rappresenta l'utente in un sistema che non è un server terminal. Si noti che se un'azione personalizzata con l'attributo msidbCustomActionTypeTSAware modifica il Registro di sistema dell'utente, il programma di installazione non garantisce automaticamente che tali modifiche vengano apportate anche nel Registro di sistema di ogni utente nel computer.
  • Tutte le operazioni del Registro di sistema in un'azione personalizzata posticipata che leggono dall'hive del Registro di sistema HKCU vedono l'hive del Registro di sistema predefinito del sistema e non l'hive del Registro di sistema dell'utente corrente.
  • Tutte le operazioni del Registro di sistema in un'azione personalizzata posticipata che scrivono in HKCU\Software vengono rilevate dal programma di installazione e copiate in ogni utente del computer all'accesso successivo dell'utente.
  • Tutte le operazioni del Registro di sistema in un'azione personalizzata posticipata che scrivono in HKCU, ma non sono incluse nella chiave del Registro di sistema delsoftwareHKCU\, non vengono rilevate dal programma di installazione o copiate.

Per altre informazioni, vedere Servizi terminal in Microsoft Windows Software Development Kit (SDK).

EnableAdminTSRemote

TerminalServer - proprietà

RemoteAdminTS - proprietà

Servizi terminal