2009-03-17 12 views
5

Stworzyłem więc dodatek do Outlooka i użyłem konfiguracji "kliknij raz", aby ją wdrożyć.Tworzenie konfiguracji (ClickOnce) dla VSTO Outlook Add-in

Konfiguracja działa poprawnie, gdy użytkownik jest administratorem, ale poza tym: nie ma go.

Uruchamianie instalacji z "uruchom jako ..." i logowanie jako administrator działa, ale niż dodatek jest instalowany pod adminem, a nie bieżącym użytkownikiem. Addin nie pojawia się w prognozie.

Próbowałem zgodnie z tym przewodnikiem: http://blogs.msdn.com/mshneer/archive/2008/04/24/deploying-your-vsto-add-in-to-all-users-part-iii.aspx

Ale utknąć w części I: http://blogs.msdn.com/mshneer/archive/2007/09/04/deploying-your-vsto-add-in-to-all-users-part-i.aspx

śledzę przykłady i uruchamiania programu Excel, jak opisano:

Teraz uruchom aplikację Excel . Sprawdź klucze rejestru w gałęzi HKCU, np. znajdziesz dwa interesujące klucze rejestru, które pojawiają się pod HKCU ula:

  • HKCU \ Software \ Microsoft \ Office \ TestKey klucz rejestru wartość zawierającą rejestr testValue
  • Teraz również HKCU \ Software \ Microsoft \ Office \ 12.0 \ User Settings \ TestPropagation rejestrze klucz o wartości hrabiego ustawiony na 1

Ale na moim komputerze klucze nie są tworzone ... Co mogę spróbować dalej?

Odpowiedz

0

I nie zostało to zrobione w ciągu kilku lat, ale z pamięci Addins biura Wirtualny „zarejestrowany” tak:

  1. pliki umieszczone w odpowiednim miejscu
  2. rejestru obiektu .NET COM, który reprezentuje dodać
  3. umieścić wpisy rejestru pod Microsoft\Office\Addins, aby powiedzieć urzędowi, aby załadować swój obiekt COM.

Jeśli moje myślenie jest poprawne, problem będzie polegał na tym, że musisz zarejestrować obiekt COM. Rejestrowanie obiektów COM jest działaniem na maszynę i dlatego wymaga uprawnień administratora.

Będziesz mógł sprawdzić, czy rzeczywiście tak się dzieje. Twój klucz rejestru pod dodatkami biurowymi jeden będzie nazywany czymś w rodzaju MyAddin.Connect. Następnie możesz przeszukać pod HKEY_CLASSES_ROOT dla MyAddin.Connect i powinien on być obecny, gdy uruchomisz instalację jako admin, i nie obecny podczas pracy jako użytkownik.

Jeśli tak jest, można obejść go, wykonując rejestrację obiektu COM na użytkownika, ale jest to trochę bolesne.

W dzisiejszych czasach rzeczy mogą być łatwiejsze, ale kiedy musiałem to zrobić, użyłeś narzędzia o nazwie RegCap.exe, aby przechwycić wpisy rejestru powiązane z obiektem COM w pliku .reg, a następnie zmodyfikować.plik reg z edytorem tekstu, który zastąpi HKLM z HKCU, wtedy zamiast rejestrowania obiektu COM, ładujesz ten plik .reg.

+0

To nie ma zastosowania. Dodano instalację ClickOnce dodatków Office w .NET 3.5 i znacznie łatwiej jest je zainstalować. Nie jest wymagana rejestracja COM z Twojej strony. – RobinDotNet

0

Wystarczy być jasne, jesteś dodając klucze rejestru do "HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Office \ 12.0 \ Ustawienia użytkownika"

i nie są one wciąż pojawiające się w HKCU \ Software \ Microsoft \ Office \?

Zakładam, że musisz uruchomić system operacyjny 64-bitowy?

Jeśli tak poprawka jest proste, spróbuj zamiast tego

systemu Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Wow6432Node \ Microsoft \ Office \ 12.0 \ Ustawienia użytkownika \ TestPropagation] "Count" = dword: 00000001 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Wow6432Node \ Microsoft \ Office \ 12.0 \ User Settings \ TestPropagation \ Tworzenie \ Software \ Microsoft \ Office \ TestKey] "testValue" = "test"

Wskazówka ścieżka do klucza znajduje się pod kluczem Wow6432Node. Musi być w tym miejscu lub nie będzie działać na 64-bitowym systemie operacyjnym.

+0

Cóż, używam Vista Business 32bit. I rzeczywiście, klucze nie pojawiają się w HKCU \ Software \ Microsoft \ Office \, kiedy zaczynam biuro. Chociaż artykuł mówi, że powinni. Jakieś inne sugestie? –

+0

Jak dodajesz klucze do rejestru? Jeśli masz kontrolę konta użytkownika i instalujesz z nie podniesionego procesu, może to być wirtualizacja klucza. Sprawdź, czy klucz jest: HKEY_USERS \ _Classes \ VirtualStore \ Machine \ Software \ Microsoft \ Office \ 12.0 \ Ustawienia użytkownika –

+0

Nie możesz pisać do HKLM w instalacji CLickOnce. IT nie ma przywilejów. – RobinDotNet

0

Jeśli dobrze rozumiem pytanie, opiszę Twój scenariusz: aplikacja clickonce zostanie zainstalowana dla wszystkich użytkowników i dlatego musi być początkowo uruchamiana za pomocą mechanizmu wdrażania, który ma uprawnienia administratora, aby pisać klucze do HKLM. Po tym czasie standardowy użytkownik loguje się, pakiet Microsoft Office kopiuje klucze HKLM do HKCU podczas uruchamiania, a dodatek jest uruchamiany w kontekście standardowego użytkownika dla dowolnego użytkownika na tym komputerze.

Jeśli wszystkie próby zostały wyczerpane po pobraniu pakietu Office do użycia kluczy HKLM do skopiowania do HKCU, gdy użytkownik uruchomi pakiet Office, zrzuciłbym razem skrypt vbs i plik reg, umieść skrypt vbs w pliku startowym wszystkich użytkowników (używając niektóre narzędzia do wdrażania na poziomie administratora) i samodzielnie zarządzać tworzeniem kluczy specjalnych w HKCU bez pomocy Office. Plik skryptu vbs po cichu uruchomi regedit, aby umieścić odpowiednie klucze w HKCU, gdy użytkownik się zaloguje.

Jest to podobne do sposobu, w jaki zarządzamy WordPerfect w moim biurze. Aktualizacja: Użyj poprawki KB976477, aby rozwiązać ten problem.

+0

Ponieważ chcemy stworzyć instalatora, który możemy dać naszym klientom, rozwiązanie vbs nie wygląda tak, jak należy. –

+0

Niestety, to całkowicie wstecz. Aplikacje ClickOnce są instalowane tylko dla poszczególnych użytkowników. – RobinDotNet

+0

RobinDotNet - Pierwszy akapit to moja próba parafrazowania pytania i jego intencji (a nie części mojej odpowiedzi). Tak, dziękuję, rozumiem instalacje ClickOnce i na użytkownika. –

0

Musisz użyć dodatku współdzielonego zamiast dodatku VSTO, jeśli chcesz zainstalować dodatek Outlook dla wszystkich użytkowników. Dodatek VSTO jest dla każdego użytkownika, a nie dla każdego komputera, więc dla standardowych użytkowników musisz tymczasowo dać użytkownikowi autoryzację lokalnego administratora, aby go zainstalować.

0

Do jakiej wersji pakietu Office jest kierowany dodatek i do której wersji systemu .NET Framework jest kierowany? Jakiej wersji Visual Studio używasz?

To powinno działać; Mam dwa dodatki Office w produkcji teraz, które są wdrażane z ClickOnce.

Wymieniony artykuł dotyczy instalacji dla wszystkich użytkowników. To nie używa ClickOnce i nie ma znaczenia dla twojej sprawy.

Mogę dać ci kilka kroków do wdrożenia po tym, jak dowiem się, jakie wersje używasz/celujesz. :-)

0
  1. Utwórz lokalne konto administratora powiedz TESTAccount.
  2. Zainstaluj dodatek, klikając raz dla tego użytkownika.
  3. Ponownie zalogować się jako administrator i skopiować TESTAccount do domyślnego użytkownika.

Teraz, gdy ktoś zaloguje się do maszyny, zostanie utworzony dla nich nowy profil z domyślnego profilu, a więc będzie zainstalowany dodatek.

Powiązane problemy