Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym temacie wyjaśniono, jak zarejestrować program w rejestrze systemu Windows jako jeden z następujących typów klientów: przeglądarka, poczta e-mail, odtwarzanie multimediów, wiadomości błyskawiczne lub maszyna wirtualna dla języka Java.
Notatka
Te informacje dotyczą następujących systemów operacyjnych:
- Windows 2000 Service Pack 3 (SP3)
- Windows 2000 z pakietem Service Pack 4 (SP4)
- Windows XP Service Pack 1 (SP1)
- Windows XP z Pakietem Service Pack 2 (SP2)
- Windows XP z dodatkiem Service Pack 3 (SP3)
- Windows Server 2003
- Windows Vista
- Windows Vista Service Pack 1 (SP1)
- Windows 8
Ten temat zawiera następujące sekcje.
- wspólne elementy rejestracji dla wszystkich typów klientów
- Elementy rejestracji dla określonych typów klientów
- kompletne przykładowe rejestracje
- Tematy pokrewne
Ten temat rozszerza istniejącą dokumentację dotyczącą rejestrowania programu jako określonego typu klienta. Aby uzyskać linki do tej dokumentacji, zobacz sekcję Tematy pokrewne.
Wspólne elementy rejestracji dla wszystkich typów klientów
Podczas rejestrowania programu jako typu klienta większość wpisów rejestru jest taka sama, niezależnie od typu klienta. Niektóre wpisy rejestru są jednak specyficzne dla typu klienta i zostały one zanotowane w sekcji Elementy rejestracji dla określonych typów klientów.
W tej sekcji omówiono następujące tematy:
- wybieranie nazwy kanonicznej
- rejestrowanie nazwy wyświetlanej programu
- Rejestrowanie ikony programu
- Rejestrowanie otwartego czasownika
- Rejestrowanie Informacji o Instalacji
Notatka
Nazwy podkluczy występujące kursywą w tym temacie są symbolami zastępczymi dla nazw podkluczy zdefiniowanych przez użytkownika lub zestawów możliwych wartości. Pełne przykłady z przykładowymi nazwami są dostępne w sekcji Complete Sample Registrations (Pełne przykładowe rejestracje).
Wszystkie informacje o rejestracji typu klienta są przechowywane w następującym podkluczu:
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
ClientTypeName jest jedną z następujących nazw podklucza:
- StartMenuInternet (dla przeglądarek)
- Poczta (na adres e-mail)
- Multimedia (na potrzeby odtwarzania multimediów)
- IM (wiadomości błyskawiczne)
- JavaVM (dla maszyny wirtualnej dla języka Java)
W tym temacie zanotujesz odwołania do fikcyjnego programu komputerowego o nazwie "Lit View" firmy Litware Inc., z plikiem wykonywalnym o nazwie Litview.exe. Ten hipotetyczny program jest używany zamiennie jako komunikator błyskawiczny, przeglądarka lub inny typ programu klienckiego zgodnie z potrzebami w celach ilustracyjnych.
Wybieranie nazwy kanonicznej
Dostawca musi wybrać nazwę kanoniczną dla programu. Nazwa kanoniczna nigdy nie jest wyświetlana użytkownikowi, więc nie musi być zlokalizowana. Jego jedynym celem jest podanie unikatowego ciągu, który może służyć do identyfikowania programu. Zazwyczaj jest to ta sama co angielska nazwa programu, ale jest to tylko konwencja.
W przypadku typów klientów innych niż przeglądarki nazwa kanoniczna może być dowolnym ciągiem. Wybierz unikatową nazwę, która prawdopodobnie nie będzie używana przez innego dostawcę.
W przypadku klientów przeglądarki nazwa kanoniczna musi być nazwą ( w tym rozszerzeniem) skojarzonego pliku wykonywalnego; na przykład "Litview.exe".
Oto kilka przykładów nazw kanonicznych.
- Iexplore.exe (przeglądarka)
- Poczta systemu Windows (poczta e-mail)
- Windows Media Player (multimedia)
- Windows Messenger (wiadomości błyskawiczne)
Zarejestruj nazwę kanoniczną, tworząc podklucz, jak pokazano tutaj. Nazwa podklucza to nazwa kanoniczna. Wszystkie informacje dotyczące rejestracji tego programu będą istnieć w ramach tego podklucza.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
Rejestrowanie nazwy wyświetlanej programu
Następnym krokiem rejestracji jest określenie nazwy wyświetlanej programu. Jest on podawany jako wartość w kluczu nazwy kanonicznej, jak pokazano tutaj. Pamiętaj, że CanonicalName i ClientTypeName nie są rzeczywistymi nazwami kluczy, ale tylko symbolami zastępczymi dla prawdziwych nazw, takich jak Lit View.
Notatka
Począwszy od Windows 8, nazwa używana do rejestrowania dla Ustawienia dostępu do programu i ustawień domyślnych komputera oraz dla programy domyślne powinna być zgodna, aby zmiany w SPAD wywoływały rejestrację programów domyślnych.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
LocalizedString = @FilePath,-StringID
Wartość LocalizedString jest ciągiem REG_SZ i składa się z znaku "at" (@), pełnej ścieżki do pliku .dll lub .exe, przecinka, znaku minus i liczby całkowitej dziesiętnej. Liczba całkowita dziesiętna jest identyfikatorem zasobu ciągu — zawartego w pliku .dll lub .exe — którego wartość ma być wyświetlana użytkownikowi jako nazwa tego klienta. Pamiętaj, że ścieżka pliku nie wymaga znaków cudzysłowu, nawet jeśli zawiera spacje.
Zarejestrowanie ciągu nazwy wyświetlanej w ten sposób umożliwia użycie tej samej rejestracji w wielu językach. Każda instalacja języka udostępnia inny plik zasobu o nazwie wyświetlanej przechowywanej w tym samym identyfikatorze zasobu.
W poniższym przykładzie pokazano rejestrację do fikcyjnego komunikatora Lit View do obsługi wiadomości błyskawicznych. Ponieważ jest to program do obsługi wiadomości błyskawicznych, podklucz CanonicalName (w tym przypadku Lit View) jest przechowywany w podkluczu IM.
HKEY_LOCAL_MACHINE
Software
Clients
IM
Lit View
(Default) = Lit View
LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123
Zwróć uwagę na użycie wpisu (Default) jako dodatkowej deklaracji nazwy wyświetlanej klienta. Jeśli LocalizedString nie istnieje, zamiast tego zostanie użyta wartość (Domyślna). Działa to z wszystkimi typami klientów (przeglądarki internetowe, przeglądarki poczty e-mail, wiadomości błyskawiczne i odtwarzacze multimedialne). Aby zapewnić zgodność wsteczną z układem rejestru klienta programu Internet Explorer, programy poczty e-mail powinny ustawić wartość (Domyślna) podklucza CanonicalName na nazwę wyświetlaną klienta w aktualnie zainstalowanym języku.
Rejestrowanie ikony programu
Notatka
Ta sekcja nie dotyczy systemu Windows 2000.
Domyślnie górna sekcja menu Start systemu Windows XP i Windows Vista zawiera ikony Internet i e-mail. Te ikony nie są obecne w systemie Windows 7 lub nowszym. W przypadku przeglądarek i klientów poczty e-mail, gdy program jest przypisany jako domyślny dla ich typu klienta, ikona przypisanego programu jest wyświetlana dla wpisów w menu Start.
Rejestrowanie ikony programu jest obowiązkowe dla klientów przeglądarki i poczty e-mail. Rejestrowanie ikony odtwarzania multimediów, wiadomości błyskawicznych lub maszyny wirtualnej dla typów klientów Java jest opcjonalne, a zarejestrowane ikony dla tych typów klientów nie są obecnie używane przez system Windows i nie są wyświetlane w górnej sekcji menu windows XP lub Windows Vista Start.
Aby zarejestrować ikonę dla programu klienckiego, dodaj podklucz DefaultIcon z wartością domyślną, jak pokazano tutaj.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
DefaultIcon
(Default) = FilePath,IconIndex
Wartość FilePath jest pełną ścieżką do pliku zawierającego ikonę. Ta ścieżka nie wymaga znaków cudzysłowu, nawet jeśli zawiera spacje.
Wartość IconIndex jest interpretowana w następujący sposób:
- Jeśli IconIndex jest liczbą dodatnią, liczba jest używana jako indeks tablicy ikon przechowywanych w pliku. Jeśli na przykład IconIndex wynosi 1, druga ikona zostanie załadowana z pliku.
- Jeśli IconIndex jest liczbą ujemną, wartość bezwzględna IconIndex jest używana jako identyfikator zasobu (a nie indeks) dla ikony. Jeśli na przykład IconIndex to -3, ikona, której identyfikator zasobu to 3, jest ładowana z pliku.
W poniższym przykładzie pokazano rejestrację hipotetycznej przeglądarki Lit View. Druga ikona przechowywana w pliku Litview.exe jest używana jako domyślna.
HKEY_LOCAL_MACHINE
Software
Clients
StartMenuInternet
LITVIEW.EXE
DefaultIcon
(Default) = C:\Program Files\LitwareInc\Litview.exe,1
Rejestrowanie czasownika otwartego
Notatka
Ta sekcja nie dotyczy systemu Windows 2000. Poniższy krok jest niezbędny tylko dla klientów przeglądarki i poczty e-mail.
Załóżmy, że użytkownik wybrał program jako domyślny program internetowy lub e-mail. Ten użytkownik klika ikonę Internet internetową lub e-mail w menu Windows XP lub Windows Vista Start, aby otworzyć program. W tym momencie wiersz polecenia zarejestrowany w sposób pokazany w tym miejscu jest wykonywany.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
shell
open
command
(Default) = command line
Wiersz polecenia musi określać w pełni kwalifikowaną ścieżkę bezwzględną do pliku, a następnie opcjonalne opcje wiersza polecenia. Jeśli typ wpisu jest REG_EXPAND_SZ, zmienne środowiskowe mogą być używane w ścieżce. Należy odpowiednio użyć cudzysłowów, aby upewnić się, że spacje w wierszu polecenia nie są błędnie interpretowane. Program powinien zostać wykonany przez wiersz polecenia z odpowiednimi wartościami domyślnymi. Przeglądarki zazwyczaj otwierają stronę główną użytkownika jako domyślną. Programy poczty e-mail zwykle otwierają skrzynkę odbiorczą użytkownika.
Poniższy przykład przedstawia rejestrację czasownika open dla hipotetycznej przeglądarki Lit View. Nie określa żadnych opcji wiersza polecenia.
HKEY_LOCAL_MACHINE
Software
Clients
StartMenuInternet
LITVIEW.EXE
shell
open
command
(Default) = "C:\Program Files\LitwareInc\Litview.exe"
Należy pamiętać, że w tej wartości znaki cudzysłowu są umieszczane wokół ścieżki, ponieważ zawiera osadzone spacje. Pominięcie tych cudzysłowów może spowodować błędną interpretację wiersza polecenia.
Rejestrowanie informacji o instalacji
Notatka
Ta sekcja nie dotyczy systemu Windows Server 2003.
- Polecenie ponownej instalacji
- Komenda Ukryj ikony
- polecenie Pokaż ikony
- konfiguracja programu grupy
- przykład rejestracji przeglądarki
Funkcja, za pomocą której użytkownik wybiera domyślne programy na maszynę, ma nazwę i uzyskuje dostęp do nich, jak pokazano w poniższej tabeli. (System Windows Vista wprowadził nową funkcję, Ustaw domyślne programy, za pomocą którego użytkownik może ustawić wartości domyślne dla poszczególnych użytkowników).
| System operacyjny | Tytuł | Lokalizacja dostępu |
|---|---|---|
| Windows 7 | Ustawianie domyślnych ustawień dostępu do programu i komputera |
|
| Windows Vista | Ustawianie domyślnych ustawień dostępu do programu i komputera |
|
| Windows XP SP2 | Ustawianie dostępu do programu i wartości domyślnych |
|
| Windows XP SP1 | Konfigurowanie programów |
|
Dla uproszczenia w tym temacie jest używany tytuł funkcji systemu Windows 7. Wszystkie wersje tej funkcji są popularnie określane jako SPAD.
Notatka
Jeśli korzystasz z systemu Windows 2000 lub Windows XP, musisz mieć zainstalowany co najmniej system Windows 2000 z dodatkiem SP3 lub Windows XP z dodatkiem SP1, aby wyświetlić stronę Ustaw dostęp do programów i wartości domyślne. W systemie Windows Vista i nowszym dostęp do strony Ustawienia dostępu do programów i domyślne ustawienia komputera wymaga uprawnień administratora. Z tego powodu deweloperzy są zachęcani do rejestrowania się w Ustawianie domyślnych programów elementu Panel sterowania, aby każdy użytkownik mógł zarządzać ustawieniami domyślnymi aplikacji.
W poniższym drzewie rejestru przedstawiono różne informacje, które należy zarejestrować w kluczu InstallInfo programu, aby program był wyświetlany na stronie o nazwie Ustaw dostęp do programu i Ustawienia domyślne komputera jako opcję dla odpowiedniego rodzaju klienta. Każda z tych wartości została szczegółowo omówiona w poniższych sekcjach.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
HideIconsCommand = command line
ReinstallCommand = command line
ShowIconsCommand = command line
IconsVisible = 1
Wiersz polecenia musi określać w pełni kwalifikowaną ścieżkę bezwzględną do pliku, a następnie opcjonalne opcje wiersza polecenia. Należy odpowiednio użyć cudzysłowów, aby upewnić się, że spacje w wierszu polecenia nie są błędnie interpretowane.
Polecenie ponownej instalacji
Wiersz polecenia ponownej instalacji, zadeklarowany w wartości ReinstallCommand, jest wykonywany, kiedy użytkownik korzysta z Ustaw dostęp do programu i ustawienia domyślne komputera, aby wybrać program jako domyślny dla jego typu klienta. W systemie Windows Vista i nowszym dostęp do tej strony wymaga poziomu uprawnień administratora. W systemie Windows 8, jeśli zarejestrowano aplikację przy użyciu tej samej nazwy zarówno dla Ustawienia dostępu do programów i ustawienia domyślne komputera, jak i Programy domyślne, wartości domyślne określone w Programy domyślne dla tej aplikacji będą stosowane dla bieżącego użytkownika, jak również uruchomienie polecenia ponownej instalacji.
Program uruchamiany za pomocą polecenia wiersza poleceń do ponownej instalacji musi skojarzyć aplikację z kompletnym zestawem typów plików i protokołów , które aplikacja może obsługiwać. Wszystkie aplikacje muszą zapewnić zdolność obsługi w poleceniu ponownej instalacji. Aplikacje mogą użyć polecenia ponownej instalacji, aby zarejestrować możliwości, a także opcjonalnie ustanowić stan domyślny. Gdy aplikacja zdecyduje się zaimplementować zarówno możliwości, jak i status domyślnego programu obsługi przy użyciu polecenia ponownej instalacji, powinna również przywrócić wszystkie widoczne linki lub skróty pożądane. Widoczne punkty wejścia, które wybiera większość aplikacji, są wymienione w Polecenie Ukryj ikony.
Notatka
Zdecydowanie zaleca się, aby aplikacje implementują możliwość obsługi w poleceniu ponownej instalacji.
Po zakończeniu procesu ponownej instalacji, program uruchomiony z linii poleceń ponownej instalacji powinien się zamknąć. Nie powinien uruchamiać odpowiedniego programu; powinna jedynie rejestrować wartości domyślne. Na przykład polecenie ponownej instalacji przeglądarki nie powinno otwierać strony głównej użytkownika.
Notatka
W przypadku klientów przeglądarki i poczty e-mail w systemach Windows XP i Windows Vista aplikacje, które decydują się na ustanowienie zarówno możliwości obsługi, jak i stanu domyślnego w poleceniu ponownej instalacji, powinny zarejestrować się dla odpowiedniej ikony w górnej części menu Start. Aby uzyskać dodatkowe informacje, zobacz rejestrację menu Start .
Polecenie Ukryj ikony
Wiersz polecenia zadeklarowany w wartości HideIconsCommand jest wykonywany, gdy tylko użytkownik wyczyści pole Włącz dostęp do tego programu na stronie Ustawianie dostępu do programów i domyślnych ustawień komputera. Ten wiersz polecenia musi ukrywać wszystkie punkty dostępu programu, które są widoczne w interfejsie użytkownika. Konkretne wskazówki dotyczą usuwania skrótów i ikon z następujących lokalizacji:
- Ikony pulpitu
- Linki menu Start, w tym grupa uruchamiania
- Linki na pasku szybkiego uruchamiania
- Obszar powiadomień
- Menu skrótów
- Pasek zadań folderu
Ten wiersz polecenia musi również uniemożliwić automatyczne wywołania programu, takie jak określone w Uruchom klucz rejestru. Dostawcy są zachęcani do wdrażania tych wytycznych w wywołaniu zwrotnym aplikacji Hide Access.
Nie trzeba zrezygnować z rejestracji (możliwości aplikacji) typów plików, gdy ikony są ukryte. Nie trzeba również zrezygnować ze stanu domyślnego aplikacji dla typów plików i protokołów. Może to prowadzić do złego wrażenia użytkownika, gdy te typy są napotykane w interfejsie użytkownika.
Po pomyślnym ukryciu ikon należy zaktualizować wartość rejestru IconVisible na 0, jak pokazano poniżej:
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
IconsVisible = 0
Wpis IconVisible jest typu REG_DWORD.
Alternatywna metoda ukrywania ikon w SPAD
W przypadku niektórych starszych aplikacji pełna implementacja opcji Ukryj dostęp może nie być praktyczna. Alternatywną metodą, która osiąga ten sam efekt, jest odinstalowanie aplikacji. W poniższej sekcji przedstawiono przykładowe zachowanie i przykładowy kod, aby zaimplementować tę alternatywę. Ogólnie rzecz biorąc, niezależni dostawcy oprogramowania powinni unikać tej alternatywy, ponieważ:
- Odinstaluj aplikację całkowicie z systemu.
- Usuń wcześniej wybrane wartości domyślne.
- Nie daj możliwości reinstalacji aplikacji w interfejsie użytkownika.
- Spraw, aby funkcja włączania dostępu nie była już dostępna, ponieważ odinstalowanie całkowicie usuwa aplikację z SPAD.
Zalecane środowisko użytkownika jest następujące:
Gdy użytkownik anuluje zaznaczenie pola Włącz dostęp do tego programu w SPAD, wyświetli się następujący interfejs użytkownika.
Gdy użytkownik wybierze pozycję OK, zostanie uruchomiony element Programy i funkcje Panel sterowania, aby umożliwić użytkownikowi odinstalowanie aplikacji.
Użytkownicy systemu Windows XP powinni być wyświetleni w tym oknie dialogowym.
Gdy użytkownik systemu Windows XP wybierze OK, zostanie uruchomiony element Dodaj lub Usuń programy Panelu sterowania, aby umożliwić użytkownikowi odinstalowanie aplikacji.
Poniższy kod zawiera implementację wielokrotnego użytku dla funkcji Ukryj dostęp zgodnie z powyższym opisem. Można go używać w systemach Windows XP, Windows Vista i 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;
}
Polecenie Pokaż ikony
Wiersz polecenia zadeklarowany w wpisie ShowIconsCommand jest wykonywany, gdy użytkownik zaznacza pole Włącz dostęp do tego programu na stronie Ustaw dostęp do programu i domyślne ustawienia komputera. Ten wiersz polecenia może przywrócić punkty dostępu programu, w tym punkty dostępu w menu Start, na pulpicie i w grupie Uruchamianie, a także normalne wywołania automatyczne, takie jak te określone w Uruchom klucz rejestru. Widoczne punkty dostępu dla większości aplikacji są wymienione w poleceniu "Ukryj ikony". Aplikacja nie powinna zmieniać wartości domyślnych dla poszczególnych użytkowników; ta zmiana powinna być wykonywana przez użytkownika za pośrednictwem Domyślnych Programów.
Po pomyślnym wyświetlaniu ikon należy zaktualizować wartość rejestru IconVisible na 1, jak pokazano poniżej:
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
IconsVisible = 1
Pamiętaj, że jeśli użyto wpisu HideIconsCommand w celu wyświetlenia monitu o odinstalowanie aplikacji, wpis ShowIconsCommand nie jest używany. Należy go usunąć z rejestru z resztą informacji aplikacji podczas procesu odinstalowywania.
Konfiguracja programu grupowego
Notatka
Ta sekcja nie dotyczy systemu Windows 2000.
W ramach przygotowania systemu OEM może ustanowić konfigurację, która ukrywa punkty dostępu dla przeglądarki Microsoft, poczty e-mail, odtwarzania multimediów, wiadomości błyskawicznych lub maszyny wirtualnej dla programów klienckich Java i określa własne programy domyślne. Producenci OEM mogą umożliwić użytkownikom resetowanie swoich komputerów w dowolnym momencie do tej domyślnej konfiguracji, ustawiając następujące wartości rejestru.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
CanonicalName
InstallInfo
OEMShowIcons = 1
OEMDefault = 1
Jeśli te klucze są ustawione, użytkownicy mogą przywrócić konfigurację fabryczną, wybierając opcję Producent komputera na stronie Ustaw dostęp do programu i ustawienia domyślne komputera. Jeśli te klucze nie są ustawione, opcja Producent komputera nie jest wyświetlana.
Wpis OEMShowIcons, jeśli istnieje, ustawia stan wyświetlania ikony dla wybranego klienta, który zostanie zastosowany, jeśli użytkownik wybierze Producent komputera. Wartość 1 powoduje, że ikony są wyświetlane, a wartość 0 powoduje, że ikony nie są wyświetlane. Jeśli OEMShowIcons jest nieobecny, wybranie Producenta komputera nie ma wpływu na ustawienie wyświetlania ikon. OEMShowIcons jest typu REG_DWORD.
Wpis OEMDefault, jeśli jest obecny i ustawiony na 1, ustanawia preferencję OEM dla domyślnego klienta wskazanego typu. Domyślnym OEM można oznaczyć tylko jednego klienta określonego typu. Jeśli rejestracja więcej niż jednego klienta zawiera wpis OEMDefault, wszystkie zostaną zignorowane, a bieżący klient będzie nadal używany jako klient domyślny. Jeśli wpis OEMDefault nie jest obecny lub jest obecny i ustawiony na 0, to ten konkretny klient nie jest używany jako domyślny klient, jeśli użytkownik wybierze Producent komputera. OEMDefault jest typu REG_DWORD.
Oprócz opcji resetowania komputerów do domyślnej konfiguracji ustanowionej przez producenta OEM użytkownicy mają trzy inne opcje konfiguracji:
- Ustaw komputer na konfigurację systemu Microsoft Windows. W tym przypadku strona Ustaw dostęp do programu i ustawienia domyślne komputera umożliwia dostęp do wszystkich programów firmy Microsoft i innych firm na komputerze zarejestrowanym w odpowiednich kategoriach produktów. Programy systemu Microsoft Windows są wybierane jako domyślna opcja dla każdej kategorii.
- Ustaw komputer na konfigurację inną niż Microsoft. Ta konfiguracja ukrywa punkty dostępu (takie jak menu Start ) do programu Windows Internet Explorer, Windows Media Player, Windows Messenger i Microsoft Outlook Express. Umożliwia dostęp do oprogramowania innego niż Microsoft na komputerze w tych kategoriach. Ponadto jeśli program inny niż Microsoft jest dostępny w kategorii, jest ustawiony jako domyślny dla tej kategorii. Jeśli więcej niż jeden program inny niż microsoft jest dostępny w kategorii, użytkownik zostanie poproszony o wybranie programu innego niż Microsoft, który ma być używany jako domyślny.
- Utwórz konfigurację niestandardową. Użytkownicy wybierają własne opcje umożliwiające włączanie lub usuwanie dostępu, mieszanie programów firmy Microsoft i innych firm w miarę ich dopasowania. Użytkownicy ustanawiają domyślne opcje dla poszczególnych kategorii.
Użytkownicy mogą w dowolnym momencie zmieniać dowolną z tych opcji.
Przykład rejestracji przeglądarki
W poniższym przykładzie przedstawiono pełną InstallInfo rejestracji fikcyjnej przeglądarki Lit View. W takim przypadku przełączniki wiersza polecenia umożliwiają plikowi Litview.exe wykonywanie wszystkich niezbędnych działań dla każdej wartości.
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
Należy pamiętać, że znaki cudzysłowu są umieszczane wokół ścieżek, ponieważ zawierają osadzone spacje.
Elementy rejestracji dla określonych typów klientów
Poniższe informacje można również znaleźć w zasobach wymienionych w sekcji Tematy pokrewne na końcu tego tematu.
Rejestracja menu Start
W systemie Windows XP aplikacje zazwyczaj rejestrowały wartości domyślne w całym komputerze (HKEY_LOCAL_MACHINE), a nie w zakresie użytkownika (HKEY_CURRENT_USER). Wraz z wprowadzeniem w systemie Windows Vista Kontroli Kont Użytkownika (UAC) aplikacje zajmujące pozycje Internet i E-mail w menu Start muszą zaimplementować polecenie ponownej instalacji w odpowiednim kontekście wykonywania.
Notatka
Menu Start , link do wiadomości e-mail został usunięty z wersji systemu Windows 7. Jednak rejestracja omówiona w tej sekcji powinna być nadal wykonywana, ponieważ przypisuje domyślnego klienta MAPI.
Ograniczony użytkownik w systemie Windows XP, Windows Vista lub Windows 7 nie może uzyskać dostępu do SPAD. Z tego powodu deweloperzy są zachęcani do zarejestrowania się w Ustawianie domyślnych programów elementu Panelu sterowania, aby każdy użytkownik mógł zarządzać ustawieniami domyślnymi aplikacji dla użytkowników.
Wybory dokonane w SPAD powinny mieć wpływ tylko na ustawienia poszczególnych maszyn.
Ustaw wartość rejestru w następujący sposób.
HKEY_LOCAL_MACHINE
Software
Clients
ClientTypeName
(Default) = CanonicalName
Notatka
Poniższe informacje dotyczą tylko systemu Windows XP.
Jeśli rejestracja domyślnego poziomu komputera w HKEY_LOCAL_MACHINE, jak pokazano powyżej, jest pomyślna, aplikacja powinna usunąć wartość przypisaną do wpisu domyślnego w następującym podkluczu:
HKEY_CURRENT_USER
SOFTWARE
Clients
ClientTypeName
Jeśli rejestracja domyślnego poziomu komputera w HKEY_LOCAL_MACHINE jak pokazano powyżej kończy się niepowodzeniem, zwykle dlatego, że użytkownik nie ma uprawnień do zapisu w podkluczu, aplikacja powinna ustawić następującą wartość:
HKEY_CURRENT_USER
SOFTWARE
Clients
ClientTypeName
(Default) = CanonicalName
Spowoduje to zarejestrowanie nazwy kanonicznej tylko dla bieżącego użytkownika, a nie dla wszystkich użytkowników.
Po zaktualizowaniu kluczy rejestru program powinien rozgłaszać komunikat WM_SETTINGCHANGE z wParam = 0 i lParam wskazujący ciąg zakończony o wartości null "Software\Clients\ClientTypeName", aby powiadomić system operacyjny, że domyślny klient uległ zmianie.
Rejestracja klienta poczty
W przypadku klienta poczty program musi mieć zarejestrowane ustawienia w HKEY_CLASSES_ROOT\mailto klucz, aby obsługiwać adresy URL używające protokołu mailto. Ustaw wartości i klucze, które odpowiadają tym ustawieniom pod następującym kluczem.
HKEY_LOCAL_MACHINE
Software
Clients
Mail
CanonicalName
Protocols
mailto
Ta hierarchia rejestru zastępuje istniejącą hierarchię rejestru mailto znalezioną w HKEY_CLASSES_ROOT\mailto. Hierarchia pozostaje taka sama, tylko lokalizacja uległa zmianie. Aby uzyskać więcej informacji na temat formatu tej hierarchii, zobacz Omówienia i samouczki dotyczące asynchronicznych protokołów wtyczkowych. Zazwyczaj protokół mailto jest rejestrowany w programie, a nie w protokole asynchronicznym, w tym przypadku ma zastosowanie dokumentacja dotycząca rejestrowania aplikacji w schemacie identyfikatora URI.
W poniższym przykładzie przedstawiono sekcję mailto rejestracji programu obsługi mailto zarejestrowanego w programie.
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
Wartość rejestru EditFlags jest udokumentowana w Typy plików w sekcji zatytułowanej "Definiowanie atrybutów typu pliku".
Ukończ przykładowe rejestracje
W poniższych przykładach przedstawiono pełne wymagania dotyczące rejestracji dla różnych typów klientów.
- Przykładowa Przeglądarka
- przykładową przeglądarkę poczty
- Przykładowy odtwarzacz "Media Player"
- Przykładowy Program Komunikatora Internetowego
- Przykładowa maszyna wirtualna dla Javy
Przykładowa przeglądarka
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
Przykładowa przeglądarka poczty
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
Przykładowy odtwarzacz multimediów
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
Przykładowy program Instant Messenger
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
Przykładowa maszyna wirtualna dla języka 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
Przykładowe firmy, organizacje, produkty, nazwy domen, adresy e-mail, logo, osoby, miejsca i wydarzenia przedstawione w niniejszym dokumencie są fikcyjne. Żadne skojarzenie z prawdziwą firmą, organizacją, produktem, nazwą domeny, adresem e-mail, logo, osobą, miejscem lub wydarzeniem jest zamierzone lub nie powinno być wnioskowane.
Tematy pokrewne