Registrazione di programmi con tipi di client
Questo argomento illustra come registrare un programma nel Registro di sistema di Windows come uno dei tipi di client seguenti: browser, posta elettronica, riproduzione multimediale, messaggistica istantanea o macchina virtuale per Java.
Nota
Queste informazioni si applicano ai sistemi operativi seguenti:
- Windows 2000 Service Pack 3 (SP3)
- Windows 2000 Service Pack 4 (SP4)
- Windows XP Service Pack 1 (SP1)
- Windows XP Service Pack 2 (SP2)
- Windows XP Service Pack 3 (SP3)
- Windows Server 2003
- Windows Vista
- Windows Vista Service Pack 1 (SP1)
- Windows 8
Questo argomento include le sezioni seguenti.
- Elementi di registrazione comuni per tutti i tipi di client
- Elementi di registrazione per tipi di client specifici
- Completare le registrazioni di esempio
- Argomenti correlati
Questo argomento estende la documentazione esistente sulla registrazione di un programma come tipo di client specifico. Per i collegamenti a tale documentazione, vedere la sezione Argomenti correlati.
Elementi di registrazione comuni per tutti i tipi di client
Quando si registra un programma come tipo di client, la maggior parte delle voci del Registro di sistema è la stessa indipendentemente dal tipo di client. Alcune voci del Registro di sistema, tuttavia, sono specifiche del tipo di client e queste sono indicate nella sezione Elementi di registrazione per tipi client specifici.
In questa sezione vengono illustrati gli argomenti seguenti:
- Selezione di un nome canonico
- Registrazione del nome visualizzato di un programma
- Registrazione dell'icona di un programma
- Registrazione di un verbo aperto
- Registrazione delle informazioni di installazione
Nota
I nomi di sottochiave specificati in corsivo in questo argomento sono segnaposto per i nomi di sottochiave definiti dall'utente o un set di valori possibili. Gli esempi completi con nomi di esempio sul posto sono disponibili nella sezione Registrazioni complete di esempio.
Tutte le informazioni di registrazione del tipo client vengono archiviate nella sottochiave seguente:
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
ClientTypeName è uno dei nomi di sottochiave seguenti:
- StartMenuInternet (per browser)
- Posta (per posta elettronica)
- Supporti (per la riproduzione multimediale)
- Messaggistica istantanea (per la messaggistica istantanea)
- JavaVM (per la macchina virtuale per Java)
In questo argomento si noteranno riferimenti a un programma informatico fittizio denominato "Lit View" di Litware Inc., con un file eseguibile denominato Litview.exe. Questo programma ipotetico viene usato in modo intercambiabile come messaggistica istantanea, un browser o un altro tipo di programma client in base alle esigenze per scopi illustrativi.
Selezione di un nome canonico
Il fornitore deve scegliere un nome canonico per il programma. Il nome canonico non viene mai visualizzato all'utente, quindi non deve essere localizzato. L'unico scopo è fornire una stringa univoca che può essere usata per identificare il programma. In genere è uguale al nome inglese del programma, ma si tratta semplicemente di una convenzione.
Per i tipi di client diversi dai browser, il nome canonico può essere qualsiasi stringa. Scegliere un nome univoco, che non è probabile che venga usato da un altro fornitore.
Per i client browser, il nome canonico deve essere il nome, inclusa l'estensione, dell'eseguibile associato; ad esempio "Litview.exe".
Ecco alcuni esempi di nomi canonici.
- Iexplore.exe (browser)
- Windows Mail (posta elettronica)
- Lettore multimediale Windows (supporti)
- Windows Messenger (messaggistica istantanea)
Registrare il nome canonico creando una sottochiave come illustrato di seguito. Il nome della sottochiave è il nome canonico. Tutte le informazioni relative alla registrazione del programma saranno presenti in questa sottochiave.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
Registrazione del nome visualizzato di un programma
Il passaggio successivo della registrazione consiste nel specificare il nome visualizzato del programma. Viene assegnato come valore sotto la chiave del nome canonico, come illustrato di seguito. Si noti anche che CanonicalName e ClientTypeName non sono i nomi effettivi delle chiavi, ma solo i segnaposto per i nomi veri, ad esempio Lit View.
Nota
A partire da Windows 8, il nome usato per la registrazione per Set Program Access and Computer Defaults (SPAD) and for Default Programs (SPAD) deve corrispondere per consentire alle modifiche SPAD di attivare registrazioni programmi predefinite.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
LocalizedString = @FilePath,-StringID
Il valore LocalizedString è una stringa REG_SZ ed è costituito da un segno "at" (@), il percorso completo di un file .dll o .exe, una virgola, un segno meno e un numero intero decimale. Il numero intero decimale è l'ID di una risorsa stringa, contenuta nel file .dll o .exe, il cui valore deve essere visualizzato all'utente come nome del client. Si noti che il percorso del file non richiede virgolette, anche se contiene spazi.
La registrazione della stringa del nome visualizzato in questo modo consente di usare la stessa registrazione per più lingue. Ogni installazione della lingua fornisce un file di risorse diverso con il nome visualizzato archiviato con lo stesso ID risorsa.
Nell'esempio seguente viene illustrata la registrazione per un programma di messaggistica istantanea di Lit View fittizio. Poiché si tratta di un programma di messaggistica istantanea, la sottochiave CanonicalName (in questo caso Lit View) viene archiviata nella sottochiave IM .
HKEY_LOCAL_MACHINE
Software
Clients
IM
Lit View
(Default) = Lit View
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
Si noti l'uso della voce (impostazione predefinita) come dichiarazione secondaria del nome visualizzato del client. Se localizedString non è presente, viene invece utilizzato il valore (predefinito). Funziona con tutti i tipi di client (browser Internet, browser di posta elettronica, messaggistica istantanea e lettori multimediali). Per la compatibilità con le versioni precedenti con il layout del Registro di sistema client di Internet Explorer, i programmi di posta elettronica devono impostare il valore (predefinito) della sottochiave CanonicalName sul nome visualizzato del client nella lingua attualmente installata.
Registrazione dell'icona di un programma
Nota
Questa sezione non si applica a Windows 2000.
Per impostazione predefinita, la sezione superiore del menu Start di Windows XP e Windows Vista contiene icone di Posta elettronica e Internet. Queste icone non sono presenti in Windows 7 e versioni successive. Per i client di browser e di posta elettronica, quando un programma viene assegnato come predefinito per il tipo di client, viene visualizzata l'icona registrata del programma per tali voci di menu Start .
La registrazione dell'icona di un programma è obbligatoria per i client di browser e di posta elettronica. La registrazione di un'icona per la riproduzione multimediale, la messaggistica istantanea o la macchina virtuale per i tipi di client Java è facoltativa e le icone registrate per tali tipi di client non vengono attualmente usate da Windows e non vengono visualizzate nella sezione superiore dei menu Start di Windows XP o Windows Vista.
Per registrare un'icona per un programma client, aggiungere una sottochiave DefaultIcon con un valore predefinito, come illustrato di seguito.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
DefaultIcon
(Default) = FilePath,IconIndex
Il valore FilePath è il percorso completo del file che contiene l'icona. Questo percorso non richiede virgolette, anche se contiene spazi.
Il valore IconIndex viene interpretato come segue:
- Se IconIndex è un numero positivo, il numero viene usato come indice della matrice in base zero delle icone archiviate nel file. Ad esempio, se IconIndex è 1, la seconda icona viene caricata dal file.
- Se IconIndex è un numero negativo, il valore assoluto di IconIndex viene usato come identificatore di risorsa (anziché come indice) per l'icona. Ad esempio, se IconIndex è -3, l'icona il cui identificatore di risorsa è 3 viene caricato dal file.
Nell'esempio seguente viene illustrata la registrazione di un ipotetico browser Lit View. La seconda icona archiviata nel file Litview.exe viene usata come predefinita.
HKEY_LOCAL_MACHINE
Software
Clients
StartMenuInternet
LITVIEW.EXE
DefaultIcon
(Default) = C:\Program Files\LitwareInc\Litview.exe,1
Registrazione di un verbo aperto
Nota
Questa sezione non si applica a Windows 2000. Il passaggio seguente è necessario solo per i client di browser e di posta elettronica.
Si supponga che un utente abbia selezionato il programma come programma Internet o di posta elettronica predefinito. L'utente fa clic sull'icona Internet o posta elettronica nel menu Start di Windows XP o Windows Vista per aprire il programma. A questo punto, viene eseguita la riga di comando registrata come illustrato di seguito.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
shell
open
command
(Default) = command line
La riga di comando deve specificare un percorso assoluto completo del file, seguito da opzioni facoltative della riga di comando. Se il tipo di voce è REG_EXPAND_SZ, le variabili di ambiente possono essere usate nel percorso. Usare le virgolette in modo appropriato per assicurarsi che gli spazi nella riga di comando non vengano interpretati in modo non corretto. La riga di comando deve eseguire il programma con le impostazioni predefinite appropriate. Per impostazione predefinita, i browser sono in genere la home page dell'utente. I programmi di posta elettronica in genere aprono la posta in arrivo dell'utente.
Nell'esempio seguente viene illustrata la registrazione di un open
verbo per un ipotetico browser Lit View. Non specifica alcuna opzione della riga di comando.
HKEY_LOCAL_MACHINE
Software
Clients
StartMenuInternet
LITVIEW.EXE
shell
open
command
(Default) = "C:\Program Files\LitwareInc\Litview.exe"
Si noti che in questo valore le virgolette vengono posizionate intorno al percorso perché contiene spazi incorporati. L'omissione di queste virgolette potrebbe causare l'errata interpretazione della riga di comando.
Registrazione delle informazioni di installazione
Nota
Questa sezione non si applica a Windows Server 2003.
- Comando Reinstalla
- Comando Nascondi icone
- Comando Mostra icone
- Configurazione del programma di gruppo
- Esempio di registrazione del browser
La funzionalità in base alla quale l'utente seleziona programmi predefiniti per computer è denominata e accessibile come illustrato nella tabella seguente. (Windows Vista ha introdotto una nuova funzionalità, Impostare i programmi predefiniti, in base ai quali un utente può impostare le impostazioni predefinite per utente.
Sistema operativo | Title | Percorso di accesso |
---|---|---|
Windows 7 | Impostare l'accesso al programma e le impostazioni predefinite del computer |
|
Windows Vista | Impostare l'accesso al programma e le impostazioni predefinite del computer |
|
Windows XP SP2 | Impostare l'accesso al programma e le impostazioni predefinite |
|
Windows XP SP1 | Configurare i programmi |
|
Per semplicità, questo argomento usa il titolo di Windows 7 della funzionalità. Tutte le versioni della funzionalità sono comunemente denominate SPAD.
Nota
Se si esegue Windows 2000 o Windows XP, è necessario che sia installato almeno Windows 2000 SP3 o Windows XP SP1 per visualizzare la pagina Imposta accesso programma e impostazioni predefinite . In Windows Vista e versioni successive, l'accesso alla pagina Imposta accesso al programma e Impostazioni predefinite computer richiede privilegi di amministratore. Per questo motivo, gli sviluppatori sono invitati a registrarsi per impostare i programmi predefiniti Pannello di controllo elemento in modo che qualsiasi utente possa gestire le impostazioni predefinite dell'applicazione.
L'albero del Registro di sistema seguente mostra la varietà di informazioni che devono essere registrate nella chiave InstallInfo del programma affinché il programma venga visualizzato nella pagina Imposta accesso programma e Impostazioni predefinite computer come opzione per il tipo di client. Ognuno di questi valori viene descritto in dettaglio nelle sezioni seguenti.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
HideIconsCommand = command line
ReinstallCommand = command line
ShowIconsCommand = command line
IconsVisible = 1
La riga di comando deve specificare un percorso assoluto completo del file, seguito da opzioni facoltative della riga di comando. Usare le virgolette in modo appropriato per assicurarsi che gli spazi nella riga di comando non vengano interpretati in modo non corretto.
Comando Reinstalla
La riga di comando reinstalla dichiarata nel valore ReinstallCommand viene eseguita quando l'utente usa la pagina Imposta accesso programma e Impostazioni predefinite computer per selezionare il programma come predefinito per il tipo di client. In Windows Vista e versioni successive, l'accesso a questa pagina richiede un livello di privilegi di amministratore. In Windows 8, se hai registrato l'applicazione con lo stesso nome sia per Impostazione accesso al programma che per i programmi predefiniti del computer, le impostazioni predefinite specificate in Programmi predefiniti per tale applicazione verranno applicate per l'utente corrente e per l'esecuzione del comando di reinstallazione.
Il programma avviato dalla riga di comando reinstalla deve associare l'applicazione al set completo di tipi di file e protocolli che l'applicazione può gestire. Tutte le applicazioni devono stabilire la funzionalità del gestore nel comando reinstalla. Le applicazioni possono usare il comando reinstalla per registrare la funzionalità e, facoltativamente, stabilire lo stato predefinito. Quando un'applicazione sceglie di implementare sia la funzionalità che lo stato predefinito del gestore nel comando reinstalla, deve anche reinserire eventuali collegamenti o collegamenti visibili desiderati. I punti di ingresso visibili scelti dalla maggior parte delle applicazioni sono elencati nel comando Nascondi icone.
Nota
È consigliabile che le applicazioni implementino la funzionalità di gestione nel comando reinstalla.
Al termine del processo di reinstallazione, il programma avviato dalla riga di comando reinstalla dovrebbe uscire. Non deve avviare il programma corrispondente; deve semplicemente registrare le impostazioni predefinite. Ad esempio, il comando reinstalla per un browser non deve aprire la home page dell'utente.
Nota
Per i client di browser e di posta elettronica in Windows XP e Windows Vista, le applicazioni che scelgono di stabilire sia la funzionalità di gestione che lo stato predefinito nel comando reinstalla devono registrarsi per l'icona corrispondente nella parte superiore del menu Start. Per altre informazioni, vedere Registrazione del menu Start.
Comando Nascondi icone
La riga di comando dichiarata nel valore HideIconsCommand viene eseguita quando l'utente deseleziona la casella Abilita accesso a questo programma nella pagina Imposta accesso programma e Impostazioni predefinite computer. Questa riga di comando deve nascondere tutti i punti di accesso del programma visibili nell'interfaccia utente. Le linee guida specifiche riguardano la rimozione di collegamenti e icone dalle posizioni seguenti:
- Icone del desktop
- menu Start collegamenti, inclusi i Gruppo di avvio
- Collegamenti alla barra di avvio veloce
- Area di notifica
- Menu di scelta rapida
- Banda attività cartelle
Questa riga di comando deve inoltre impedire chiamate automatiche del programma, ad esempio quelle specificate nella chiave del Registro di sistema Esegui . I fornitori sono invitati a implementare queste linee guida nel callback Nascondi accesso dell'applicazione.
Non è necessario rinunciare alla registrazione (funzionalità dell'applicazione) dei tipi di file quando le icone sono nascoste. Non è inoltre necessario rinunciare allo stato predefinito dell'applicazione per i tipi di file e protocolli. In questo modo può verificarsi un'esperienza utente non valida quando questi tipi vengono rilevati nell'interfaccia utente.
Dopo aver nascosto correttamente le icone, è necessario aggiornare il valore del Registro di sistema IconsVisible su 0 come illustrato:
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
IconsVisible = 0
La voce IconsVisible è di tipo REG_DWORD.
Metodo nascondi icone alternativo in SPAD
Per alcune applicazioni legacy, un'implementazione completa di Hide Access potrebbe non essere pratica. Un metodo alternativo che ottiene lo stesso effetto consiste nel disinstallare l'applicazione. La sezione seguente illustra il comportamento di esempio e il codice di esempio per implementare questa alternativa. In generale, i fornitori di software indipendenti (ISV) dovrebbero evitare questa alternativa perché:
- Disinstallare completamente l'applicazione dal sistema.
- Rimuovere le impostazioni predefinite selezionate in precedenza.
- Lasciare nessuna opzione dell'interfaccia utente per reinstallare l'applicazione.
- Rendere la funzionalità di abilitazione dell'accesso non più disponibile, poiché una disinstallazione rimuove completamente l'applicazione dal spaD.
L'esperienza utente consigliata è la seguente:
Quando l'utente deseleziona la casella Abilita accesso a questo programma in SPAD, viene visualizzata l'interfaccia utente seguente.
Quando l'utente seleziona OK, viene avviato l'elemento Programmi e funzionalità Pannello di controllo per consentire all'utente di disinstallare l'applicazione.
Gli utenti di Windows XP devono essere visualizzati con questa finestra di dialogo.
Quando l'utente di Windows XP seleziona OK, viene avviato l'elemento Installazione applicazioni Pannello di controllo per consentire all'utente di disinstallare l'applicazione.
Il codice seguente fornisce un'implementazione riutilizzabile per la funzionalità Nascondi accesso, come descritto in precedenza. Può essere usato in Windows XP, Windows Vista e Windows 7.
#include <windows.h>
#include <shlwapi.h>
#include <strsafe.h>
PCWSTR c_pszMessage1 = L"To hide access to this program, you need to uninstall it by ";
PCWSTR c_pszMessage2 = L"using\n%s in Control Panel.\n\nWould you like to start %s?";
PCWSTR c_pszApplicationName = L"Sample App";
int _tmain(int argc, WCHAR* argv[])
{
OSVERSIONINFO version;
version.dwOSVersionInfoSize = sizeof(version);
if (GetVersionEx(&version))
{
PCWSTR pszCPLName = NULL;
if (version.dwMajorVersion >= 6)
{
// Windows Vista and later
pszCPLName = L"Programs and Features";
}
else if (version.dwMajorVersion == 5 &&
version.dwMinorVersion == 1)
{
// Windows XP
pszCPLName = L"Add/Remove Programs";
}
if (pszCPLName != NULL)
{
WCHAR szMessage[256], szScratch[256];
if (SUCCEEDED(StringCchPrintf(szScratch,
ARRAYSIZE(szScratch),
c_pszMessage2,
pszCPLName,
pszCPLName)))
{
if (SUCCEEDED(StringCchCopy(szMessage,
ARRAYSIZE(szMessage),
c_pszMessage1)))
{
if (SUCCEEDED(StringCchCat(szMessage,
ARRAYSIZE(szMessage),
szScratch)))
{
if (IDOK == MessageBox(NULL,
szMessage,
c_pszApplicationName,
MB_OKCANCEL))
{
ShellExecute(NULL,
NULL,
L"appwiz.cpl",
NULL,
NULL,
SW_SHOWNORMAL);
}
}
}
}
}
}
return 0;
}
Comando Mostra icone
La riga di comando dichiarata nella voce ShowIconsCommand viene eseguita quando l'utente controlla la casella Abilita accesso a questo programma nella pagina Imposta accesso programma e Impostazioni predefinite computer. Questa riga di comando può ripristinare i punti di accesso del programma, inclusi quelli nel menu Start , sul desktop e nel gruppo Avvio , nonché normali chiamate automatiche, ad esempio quelle specificate nella chiave del Registro di sistema Esegui . I punti di accesso visibili di interesse per la maggior parte delle applicazioni sono elencati nel comando Nascondi icone. L'applicazione non deve modificare le impostazioni predefinite per utente; tale modifica deve essere eseguita dall'utente tramite Programmi predefiniti.
Dopo aver visualizzato correttamente le icone, è necessario aggiornare il valore del Registro di sistema IconsVisible a 1 come illustrato:
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
IconsVisible = 1
Si noti che se è stata usata la voce HideIconsCommand per richiedere una disinstallazione dell'applicazione, la voce ShowIconsCommand non è in uso. Deve essere rimosso dal Registro di sistema con il resto delle informazioni dell'applicazione durante il processo di disinstallazione.
Configurazione del programma di gruppo
Nota
Questa sezione non si applica a Windows 2000.
Nell'ambito della preparazione del sistema, un OEM può stabilire una configurazione che nasconde i punti di accesso per il browser Microsoft, la posta elettronica, la riproduzione multimediale, la messaggistica istantanea o la macchina virtuale per i programmi client Java e specifica i propri programmi predefiniti. Gli OEM possono consentire agli utenti di reimpostare i computer in qualsiasi momento in questa configurazione predefinita impostando i valori del Registro di sistema seguenti.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
OEMShowIcons = 1
OEMDefault = 1
Se queste chiavi sono impostate, gli utenti possono ripristinare la configurazione OEM selezionando l'opzione Produttore computer nella pagina Imposta accesso programma e Impostazioni predefinite computer. Se queste chiavi non sono impostate, l'opzione Produttore computer non viene visualizzata.
Se presente, la voce OEMShowIcons imposta lo stato di visualizzazione dell'icona per il client specificato applicato se l'utente seleziona Produttore computer. Il valore 1 determina la visualizzazione delle icone e un valore pari a 0 determina la mancata visualizzazione delle icone. Se OEMShowIcons è assente, selezionare Produttore computer non ha alcun effetto sull'impostazione dell'icona mostrata. OEMShowIcons è di tipo REG_DWORD.
La voce OEMDefault , se presente e impostata su 1, stabilisce la preferenza OEM per il client predefinito del tipo indicato. Un solo client di un particolare tipo può essere contrassegnato come predefinito OEM. Se la registrazione di più client contiene la voce OEMDefault , tutte vengono ignorate e il client corrente continua a essere usato come client predefinito. Se la voce OEMDefault non è presente o è presente e impostata su 0, tale client specifico non viene usato come client predefinito se l'utente seleziona Produttore computer. OEMDefault è di tipo REG_DWORD.
Oltre all'opzione per reimpostare la configurazione predefinita stabilita dall'OEM, gli utenti hanno tre altre opzioni di configurazione:
- Impostare il computer su una configurazione di Microsoft Windows. In questo caso, la pagina Imposta impostazioni predefinite per l'accesso al programma e al computer consente l'accesso a tutti i software Microsoft e non Microsoft nel computer registrato nelle categorie di prodotti pertinenti. I programmi Microsoft Windows vengono selezionati come opzione predefinita per ogni categoria.
- Impostare il computer su una configurazione non Microsoft. Questa configurazione nasconde i punti di accesso (ad esempio il menu Start) a Windows Internet Explorer, Lettore multimediale Windows, Windows Messenger e Microsoft Outlook Express. Consente l'accesso al software non Microsoft nel computer in queste categorie. Inoltre, se un programma non Microsoft è disponibile in una categoria, viene impostato come predefinito per tale categoria. Se in una categoria sono disponibili più programmi non Microsoft, all'utente viene chiesto di scegliere quale programma non Microsoft deve essere usato come predefinito.
- Stabilire una configurazione personalizzata. Gli utenti effettuano selezioni personalizzate per abilitare o rimuovere l'accesso, combinando i programmi Microsoft e non Microsoft in base alle proprie esigenze. Gli utenti stabiliscono le opzioni predefinite per categoria.
Gli utenti sono liberi di modificare una qualsiasi di queste opzioni in qualsiasi momento.
Esempio di registrazione del browser
Nell'esempio seguente viene illustrata la registrazione InstallInfo completa per un browser Lit View fittizio. In questo caso, le opzioni della riga di comando consentono al file Litview.exe di eseguire le azioni necessarie per ogni valore.
HKEY_LOCAL_MACHINE
Software
Clients
StartMenuInternet
LITVIEW.EXE
InstallInfo
ReinstallCommand = "C:\Program Files\LitwareInc\Litview.exe" /reinstall
HideIconsCommand = "C:\Program Files\LitwareInc\Litview.exe" /hideicons
ShowIconsCommand = "C:\Program Files\LitwareInc\Litview.exe" /showicons
IconsVisible = 1
Si noti che le virgolette vengono posizionate intorno ai percorsi perché contengono spazi incorporati.
Elementi di registrazione per tipi di client specifici
Le informazioni seguenti sono disponibili anche nelle risorse elencate nella sezione Argomenti correlati alla fine di questo argomento.
Registrazione del menu Start
In Windows XP le applicazioni in genere registrano valori predefiniti in un ambito a livello di computer (HKEY_LOCAL_MACHINE) anziché in un ambito utente (HKEY_CURRENT_USER). Con l'introduzione di Windows Vista del controllo dell'account utente, le applicazioni che sostengono gli slot internet e di posta elettronica nel menu Start devono implementare il comando reinstalla all'interno del contesto di esecuzione corretto.
Nota
Il collegamento di posta elettronica menu Start è stato rimosso a partire da Windows 7. Tuttavia, la registrazione descritta in questa sezione deve comunque essere eseguita perché assegna il client MAPI predefinito.
Un utente limitato in Windows XP, Windows Vista o Windows 7 non può accedere a SPAD. Per questo motivo, gli sviluppatori sono invitati a registrarsi per impostare i programmi predefiniti Pannello di controllo elemento in modo che qualsiasi utente possa gestire le impostazioni predefinite dell'applicazione per utente.
Le selezioni effettuate in SPAD devono influire solo sulle impostazioni per computer.
Impostare il valore del Registro di sistema come indicato di seguito.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
(Default) = CanonicalName
Nota
Le informazioni seguenti si applicano solo a Windows XP.
Se la registrazione del valore predefinito a livello di computer in HKEY_LOCAL_MACHINE come illustrato in precedenza ha esito positivo, l'applicazione deve eliminare il valore assegnato alla voce Predefinita nella sottochiave seguente:
HKEY_CURRENT_USER
SOFTWARE
Clients
ClientTypeName
Se la registrazione del valore predefinito a livello di computer in HKEY_LOCAL_MACHINE come illustrato in precedenza ha esito negativo, in genere perché l'utente non dispone dell'autorizzazione di scrittura per la sottochiave, l'applicazione deve impostare il valore seguente:
HKEY_CURRENT_USER
SOFTWARE
Clients
ClientTypeName
(Default) = CanonicalName
Questo registra il nome canonico solo per l'utente corrente, non per tutti gli utenti.
Dopo l'aggiornamento delle chiavi del Registro di sistema, il programma deve trasmettere il messaggio WM_SETTINGCHANGE con wParam = 0 e lParam che punta alla stringa con terminazione null "Software\Clients\ClientTypeName" per notificare al sistema operativo che il client predefinito è stato modificato.
Registrazione client di posta elettronica
Per un client di posta elettronica, il programma deve avere impostazioni registrate nella chiave HKEY_CLASSES_ROOT\mailto per poter gestire gli URL che usano il mailto
protocollo. Impostare valori e chiavi che rispecchiano tali impostazioni nella chiave seguente.
HKEY_LOCAL_MACHINE
Software
Clients
Mail
CanonicalName
Protocols
mailto
Questa gerarchia del Registro di sistema sostituisce la gerarchia del Registro di sistema esistente mailto
trovata in HKEY_CLASSES_ROOT\mailto. La gerarchia rimane invariata, ma solo la posizione è stata modificata. Per altre informazioni sul formato di questa gerarchia, vedere Cenni preliminari sui protocolli pluggable asincroni ed esercitazioni. In genere, il mailto
protocollo viene registrato in un programma anziché in un protocollo asincrono, nel qual caso viene applicata la documentazione relativa alla registrazione di un'applicazione a uno schema URI.
Nell'esempio seguente viene illustrata la mailto
sezione della registrazione per un mailto
gestore registrato in un programma.
HKEY_LOCAL_MACHINE
Software
Clients
Mail
CanonicalName
Protocols
mailto
(Default) = URL:MailTo Protocol
EditFlags = 02 00 00 00
URL Protocol
DefaultIcon
(Default) = %FilePath%,IconIndex
shell
open
command
(Default) = command line
Il valore del Registro di sistema EditFlags è documentato in Tipi di file nella sezione intitolata "Definizione degli attributi del tipo di file".
Completare le registrazioni di esempio
Gli esempi seguenti vengono forniti per mostrare i requisiti di registrazione completi per i vari tipi di client.
- Browser di esempio
- Un browser di posta elettronica di esempio
- Un Lettore multimediale di esempio
- Un programma Instant Messenger di esempio
- Una macchina virtuale di esempio per Java
Browser di esempio
HKEY_LOCAL_MACHINE
Software
Clients
StartMenuInternet
LITVIEW.EXE
(Default) = Lit View
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
DefaultIcon
(Default) = C:\Program Files\LitwareInc\LITVIEW.EXE,1
InstallInfo
ReinstallCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /reinstall
HideIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /hideicons
ShowIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /showicons
IconsVisible = 1
shell
open
command
(Default) = "C:\Program Files\LitwareInc\LITVIEW.EXE" /homepage
Un browser di posta elettronica di esempio
HKEY_LOCAL_MACHINE
Software
Clients
Mail
Lit View
(Default) = Lit View
DLLPath = @C:\Program Files\LItwareInc\LitwareMAPI.dll
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
DefaultIcon
(Default) = C:\Program Files\LitwareInc\LITVIEW.EXE,1
InstallInfo
ReinstallCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /reinstall
HideIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /hideicons
ShowIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /showicons
IconsVisible = 1
shell
open
command
(Default) = "C:\Program Files\LitwareInc\LITVIEW.EXE" /inbox
protocols
mailto
(Default) = URL:MailTo Protocol
EditFlags = 02 00 00 00
URL Protocol
DefaultIcon
(Default) = C:\Program Files\LitwareInc\LITVIEW.EXE,1
shell
open
command
(Default) = "C:\Program Files\LitwareInc\LITVIEW.EXE" /mailto:%1
Un Lettore multimediale di esempio
HKEY_LOCAL_MACHINE
Software
Clients
Media
Lit View
(Default) = Lit View
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
DefaultIcon
(Default) = C:\Program Files\LitwareInc\LITVIEW.EXE,1
InstallInfo
ReinstallCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /reinstall
HideIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /hideicons
ShowIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /showicons
IconsVisible = 1
Un programma Instant Messenger di esempio
HKEY_LOCAL_MACHINE
Software
Clients
IM
Lit View
(Default) = Lit View
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
DefaultIcon
(Default) = C:\Program Files\LitwareInc\LITVIEW.EXE,1
InstallInfo
ReinstallCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /reinstall
HideIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /hideicons
ShowIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /showicons
IconsVisible = 1
Una macchina virtuale di esempio per Java
HKEY_LOCAL_MACHINE
Software
Clients
JavaVM
Lit View
(Default) = Lit View
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
DefaultIcon
(Default) = C:\Program Files\LitwareInc\LITVIEW.EXE,1
InstallInfo
ReinstallCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /reinstall
HideIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /hideicons
ShowIconsCommand = "C:\Program Files\LitwareInc\LITVIEW.EXE" /showicons
IconsVisible = 1
Ogni riferimento a società, organizzazioni, prodotti, nomi di dominio, indirizzi di posta elettronica, logo, persone, luoghi ed eventi è puramente casuale. e ha il solo scopo di illustrare l’uso del prodotto Microsoft.
Argomenti correlati
-
Come registrare un browser Internet o un client di posta elettronica con il menu Start di Windows
-
Cenni preliminari e esercitazioni su protocolli collegabili asincroni