Condividi tramite


Tabella delle funzionalità

La tabella delle caratteristiche definisce la struttura ad albero logica delle funzionalità e contiene le colonne illustrate nella tabella seguente.

Colonna Digitare Chiave Nullable
Caratteristica identificatore Y N
Feature_Parent identificatore N Y
Titolo testo N Y
Descrizione testo N Y
Esporre Integer N Y
Livello Integer N N
Directory_ identificatore N Y
Attributi Integer N N

 

Colonne

funzionalità

Chiave primaria utilizzata per identificare un record di funzionalità specifico. Il valore in questo campo non deve superare una lunghezza massima di 38 caratteri.

Feature_Parent

Chiave facoltativa di un record padre nella stessa tabella.

La chiave punta alla colonna Feature. Se la funzionalità padre non è selezionata, questa funzionalità non è installata. Un valore Null in questo campo indica che questa funzionalità non ha un elemento padre ed è un elemento radice. La colonna Feature_Parent non deve essere uguale alla colonna Feature dello stesso record.

Nota

La profondità massima di qualsiasi caratteristica è 16. Un errore 2701 restituisce se esiste una funzionalità che supera questa profondità massima.

 

titolo

Stringa breve di testo che identifica una funzionalità.

Questa stringa viene elencata come elemento dal controllo SelectionTree della finestra di dialogo di selezione .

Descrizione

Stringa di testo più lunga che descrive una funzionalità.

Questa stringa localizzabile viene visualizzata dal controllo testo della finestra di dialogo di selezione .

visualizzazione

Il numero in questo campo specifica l'ordine in cui deve essere visualizzata la funzionalità nell'interfaccia utente.

Il valore determina inoltre se la funzionalità viene inizialmente visualizzata espansa o compressa. Se il valore è null o 0 (zero), il record non viene visualizzato.

  • Se il valore è dispari, il nodo della funzionalità viene espanso inizialmente.
  • Se il valore è pari, il nodo della funzionalità viene inizialmente compresso.

livello

Livello di installazione iniziale di questa funzionalità. L'elaborazione della tabella delle condizioni può modificare il valore del livello.

Un livello di installazione pari a 0 (zero) disabilita l'elemento e ne impedisce la visualizzazione. Una funzionalità con livello di installazione pari a 0 (zero) non viene installata durante alcuna installazione, incluse le installazioni amministrative. Per altre informazioni, vedere le informazioni "Livello di installazione" nella sezione Osservazioni di questo argomento.

Directory_

La colonna Directory_ specifica il nome di una directory che può essere configurata da una finestra di dialogo di selezione .

Poiché questo campo è una chiave nella tabella directory , la directory specificata deve essere elencata nella prima colonna della tabella directory. È necessario immettere un proprietà pubblica in questa colonna per rendere la directory configurabile e visualizzare un pulsante sfoglia nella finestra di dialogo di selezione .

attributi

Opzione di esecuzione remota per le funzionalità non installate e per le quali non viene effettuata alcuna richiesta di stato della funzionalità utilizzando una delle proprietà seguenti.

Aggiungere i bit indicati al valore totale di questa colonna per includere un'opzione di esecuzione remota.

  • Se questo campo è vuoto, il valore predefinito è 0 (zero), msidbFeatureAttributesFavorLocal.
  • Se il livello di installazione della funzionalità è 0 (zero) o maggiore o uguale al livello di installazione corrente, non viene apportata alcuna modifica nello stato della funzionalità.
Nome Decimale Esadecimale Descrizione
msidbFeatureAttributesFavorLocal 0 0x0000 I componenti di questa funzionalità non contrassegnati per l'installazione dall'origine vengono installati localmente. Un componente condiviso da due o più funzionalità, alcune delle quali sono impostate su msidbFeatureAttributesFavorLocal e alcune su msidbFeatureAttributesFavorSource, vengono installate localmente. I componenti contrassegnati con msidbComponentAttributesSourceOnly nella tabella dei componenti vengono sempre eseguiti dal server/CD di origine. I bit msidbFeatureAttributesFavorLocal e msidbFeatureAttributesFavorSource funzionano con funzionalità non elencate dalla proprietà ADVERTISE.
msidbFeatureAttributesFavorSource 1 0x0001 I componenti di questa funzionalità non contrassegnati per l'installazione locale vengono installati per l'esecuzione dal CD-ROM di origine o dal server. Un componente condiviso da due o più funzionalità, alcune delle quali sono impostate su msidbFeatureAttributesFavorLocal e alcune su msidbFeatureAttributesFavorSource, vengono installate per l'esecuzione in locale. I componenti contrassegnati con msidbComponentAttributesLocalOnly nella tabella dei componenti vengono sempre installati localmente. I bit msidbFeatureAttributesFavorLocal e msidbFeatureAttributesFavorSource funzionano con funzionalità non elencate dalla proprietà ADVERTISE.
msidbFeatureAttributesFollowParent 2 0x0002 Impostare questo attributo e lo stato della funzionalità corrisponde allo stato dell'elemento padre della funzionalità. Non è possibile usare questa opzione se la funzionalità si trova nella radice di un albero delle funzionalità. Omettere questo attributo e lo stato della funzionalità viene determinato in base a msidbFeatureAttributesDisallowAdvertise e msidbFeatureAttributesFavorLocal e msidbFeatureAttributesFavorSource.
Per garantire che lo stato della funzionalità figlio segua sempre lo stato del padre, anche quando inizialmente l'elemento figlio e l'elemento padre sono impostati su assente nel controllo SelectionTree, è necessario includere sia msidbFeatureAttributesFollowParent che msidbFeatureAttributesUIDisallowAbsent negli attributi della funzionalità figlio.
Si noti che se si imposta msidbFeatureAttributesFollowParent senza impostare msidbFeatureAttributesUIDisallowAbsent, il programma di installazione non può forzare la funzionalità figlio dallo stato assente. In questo caso, la funzionalità figlio corrisponde allo stato di installazione dell'elemento padre solo se l'elemento figlio è impostato su un valore diverso da assente.
Impostare msidbFeatureAttributesFollowParent e msidbFeatureAttributesUIDisallowAbsent per garantire che una funzionalità figlio segua lo stato della funzionalità padre.
msidbFeatureAttributesFavorAdvertise 4 0x0004 Impostare questo attributo e lo stato della funzionalità è Annuncio. Se la funzionalità è elencata dalla proprietà ADDDEFAULT questo bit viene ignorato e lo stato della funzionalità viene determinato in base a msidbFeatureAttributesFavorLocal e msidbFeatureAttributesFavorSource. Omettere questo attributo e lo stato della funzionalità viene determinato in base a msidbFeatureAttributesDisallowAdvertise e msidbFeatureAttributesFavorLocal e msidbFeatureAttributesFavorSource.
msidbFeatureAttributesDisallowAdvertise 8 0x0008 Si noti che questo bit funziona solo con le funzionalità elencate dalla proprietà ADVERTISE. Impostare questo attributo per impedire che la funzionalità venga pubblicizzata.
Impostare questo attributo e, se la funzionalità elencata non è padre o figlio, la funzionalità viene installata in base a msidbFeatureAttributesFavorLocal e msidbFeatureAttributesFavorSource.
Impostare questo attributo per l'elemento padre di una funzionalità elencata e l'elemento padre è installato.
Impostare questo attributo per l'elemento figlio di una funzionalità elencata e lo stato dell'elemento figlio è Absent.
Omettere questo attributo e se la funzionalità elencata non è un elemento padre o figlio, lo stato della funzionalità è Annuncio.
Omettere questo attributo e, se la funzionalità elencata è padre o figlio, lo stato di entrambe le funzionalità è Annuncio.
msidbFeatureAttributesUIDisallowAbsent 16 0x0010 Impostare questo attributo e l'interfaccia utente non visualizza un'opzione per modificare lo stato della funzionalità su Absent. L'impostazione di questo attributo forza la funzionalità allo stato di installazione, indipendentemente dal fatto che la funzionalità sia visibile nell'interfaccia utente. Omettere questo attributo e l'interfaccia utente visualizza un'opzione per modificare lo stato della funzionalità in Absent.
Impostare msidbFeatureAttributesFollowParent e msidbFeatureAttributesUIDisallowAbsent per garantire che una funzionalità figlio segua lo stato della funzionalità padre.
L'impostazione di questo attributo non solo influisce sull'interfaccia utente, ma forza anche lo stato di installazione della funzionalità, indipendentemente dal fatto che la funzionalità sia visibile nell'interfaccia utente o meno.
msidbFeatureAttributesNoUnsupportedAdvertise 32 0x0020 Impostare questo attributo e la pubblicità è disabilitata per la funzionalità se la shell del sistema operativo non supporta i descrittori di Windows Installer. Omettere questo attributo e la pubblicità non è disabilitata.

 

Alcuni attributi sono esclusivi tra loro. Se si tenta di impostare questi attributi insieme nella stessa funzionalità, il pacchetto di installazione non riesce Convalida pacchetti.

  • Non usare msidbFeatureAttributesFavorAdvertise con msidbFeatureAttributesDisallowAdvertise.
  • Non usare msidbFeatureAttributesNoUnsupportedAdvertise con msidbFeatureAttributesDisallowAdvertise insieme.
  • Non usare msidbFeatureAttributesFollowParent con msidbFeatureAttributesFavorSource.
  • Si noti che i valori msidbFeatureAttributesFollowParent e msidbFeatureAttributesFavorLocal si escludono a vicenda. Se viene usato il valore msidbFeatureAttributesFollowParent, si presuppone che il valore msidbFeatureAttributesFavorLocal non esista.

Si noti che se è installata una funzionalità figlio, viene installata anche la relativa funzionalità padre. Se viene installata una funzionalità padre, la funzionalità figlio non viene necessariamente installata a meno che non siano impostati gli attributi msidbFeatureAttributesFollowParent e msidbFeatureAttributesUIDisallowAbsent. Questa relazione gerarchica dell'installazione delle funzionalità padre e figlio viene usata anche per le installazioni e le installazioni gui che usano proprietà della riga di comando.

Osservazioni

Diverse colonne temporanee aggiuntive vengono aggiunte a questa tabella quando viene caricata in memoria per i calcoli usati dalla selezione dell'interfaccia utente e dei costi.

Un componente può essere condiviso tra due o più funzionalità o applicazioni. Se due o più funzionalità fanno riferimento allo stesso componente, tale componente viene selezionato per l'installazione se viene selezionata una delle funzionalità associate. Questo può anche essere il motivo per cui le funzionalità figlio non vengono disinstallate quando viene rimossa una funzionalità padre. Se la funzionalità figlio è costituita da componenti necessari per altre funzionalità o applicazioni, Windows Installer non rimuove la funzionalità figlio.

Per altre informazioni, vedere Controllo degli stati di selezione delle funzionalità.

Livello di installazione:

  • Per qualsiasi installazione, esiste un livello di installazione definito, ovvero un valore integrale compreso tra 1 e 32.767. Il valore iniziale è determinato dalla proprietà INSTALLLEVEL, impostata nella tabella delle proprietà .
  • Una funzionalità viene installata solo se il valore del livello di funzionalità è minore o uguale al livello di installazione corrente. L'interfaccia utente può essere creata in modo che, quando l'installazione viene inizializzata, il programma di installazione consente all'utente di modificare il livello di installazione di qualsiasi funzionalità nella tabella delle funzionalità. Ad esempio, un autore può definire valori del livello di installazione che rappresentano opzioni di installazione specifiche, ad esempio Custom, Typicalo Minimume quindi creare una finestra di dialogo che usa SetInstallLevel ControlEvents per consentire all'utente di selezionare uno di questi stati.
  • A seconda dello stato selezionato dall'utente, la finestra di dialogo imposta la proprietà del livello di installazione sul valore corrispondente. Se l'autore assegna Tipico un livello pari a 100 e l'utente seleziona Tipico, vengono installate solo le funzionalità con un livello pari o inferiore a 100. Inoltre, l'opzione personalizzata potrebbe portare a un'altra finestra di dialogo contenente un controllo SelectionTree . Il controllo SelectionTree consente quindi all'utente di modificare singolarmente se ogni funzionalità è installata o meno.

Convalida

ICE03
ICE06
ICE10
ICE14
ICE21
ICE32
ICE41
ICE45
ICE47
ICE50
ICE57
ICE59
ICE62
ICE67
ICE79
ICE86
ICE94