Problem z licencją Office 2016 na Windows 10
Od pewnego czasu na grupie komputerów z Windows 10 i Office 2016 mieliśmy problem z licencją w postaci komunikatu „Microsoft Office nie może zweryfikować licencji dla tego produktu” („Microsoft Office cannot verify the license for this product”). Bez wdawania się w szczegóły: wcześniej działało, licencje są ważne, a problem pojawia się krótko po uruchomieniu jakiegoś programu z pakietu Office lub po jakimś czasie. Próbowaliśmy kilku rzeczy typu naprawianie itd, ale ostatecznie pomogło dopiero wprowadzenie kilku poprawek do rejestru.
Dlaczego tak się dzieje?
Z moich obserwacji wynikło, że problem dotyczy usługi Software Protection Platform (dalej zwanej SPP), która jest wywoływana przy każdym uruchomieniu aplikacji Office. Weryfikuje ona stan licencji. Ale jeżeli nie wystartuje w porę lub się wysypie Office myśli, że nie ma ważnej licencji i klapa.
Co zrobić? Jak żyć?
Po kilku testach ostatecznie puściliśmy za pomocą GPO na wszystkie komputery z Windows 10 poniższe poprawki do rejestru. Krótko omówię po co one są. Na końcu zawartość pliku .reg ale nie odpowiadam za jego użycie ;)
Poprawka 1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
Tutaj tworzymy lub modyfikujemy „ServicesPipeTimeout” jako DWORD o wartości dziesiętnej 180000. To czas w milisekundach jaki usługi mają czas na uruchomienie się zanim Windows odnotuje błąd ich uruchamiania i powie „pas, sorry ale zamykam tą usługę”. Ustawiłem na 3 minut (180000 ms) ze standardowych 30 sekund.
Poprawka 2
Teraz zmienimy tryb uruchomienia usługi SPP tak, by startowała wraz z systemem, a nie była wywoływana przez aplikację Office.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sppsvc
Start – ustawiamy na wartość 2 (dziesiętnie)
DelayedAutoStart – ustawiamy na 0
Type – ustawiamy na 32 (dziesiętnie)
Poprawka 3
Usługa SPP startuje wraz z systemem, ale jeżeli jest nieużywana przez 30 sekund Windows ją zamyka a nasze problemy z licencją wracają. Zmienimy jeszcze jedną wartość rejestru tak, aby usługa nie wyłączała się przez np. 12 godzin.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform
InactivityShutdownDelay – ustawiamy jakąś bardzo wysoką wartość. Ja zdecydowałem się na 43200 (dziesiętnie) czyli 12 godzin. W ten sposób jeżeli klient odpali komputer o 6 rano a dopiero koło 16 odpali np. Outlooka to usługa SPP wciąż będzie działać i szybko zweryfikuje licencję.
Po ich wprowadzeniu do rejestru musimy jeszcze ponownie uruchomić komputer.
Podsumowanie
Po tych zabiegach na rejestrze usługa Software Protection Platform (SPP) powinna startować wraz z systemem i mieć przy tym więcej czasu na uruchomienie. Ponadto nie wyłączy się przez 12 godzin od jej ostatniego wykorzystania przez dowolną aplikację Office w celu weryfikacji licencji. Te poprawki rozwiązały 99% zgłaszanych problemów z komunikatem o licencji. Pozostałe 1% to użytkownicy, którym usługa SPP nie zdążyła się jeszcze uruchomić, a mają np. Outlooka w autostarcie albo świerzbi ich palec na myszce i zbyt szybko po uruchomieniu komputera odpalają Worda. Ale na to pomysłu już nie mam ;)
Poniżej pełny kod. Wklej do pliku tekstowego, zapisz jako plik .reg i scal na wadliwym kompie. Po restarcie komputera powinno pomóc.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control] "ServicesPipeTimeout"=dword:0002bf20 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sppsvc] "Start"=dword:00000002 "Type"=dword:00000020 "DelayedAutoStart"=dword:00000000 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform] "InactivityShutdownDelay"=dword:0000a8c0
Źródła:
https://support.microsoft.com/en-us/kb/922918
http://answers.microsoft.com/en-us/msoffice/forum/msoffice_excel-mso_windows8/microsoft-office-cant-find-your-license-for-this/f833f7a4-6148-4031-8b98-4e94b1a8fd01?page=5