Klikanie hiperłączy w wiadomościach e-mail staje się boleśnie powolne

9

Z systemem Windows 7 (wersja RC, wersja 64-bitowa). Nagle dziś, po miesiącach bez problemu, klikanie linków stało się bardzo wolne.

Zauważyłem to w dwóch miejscach.

(1) kliknięcie hiperłączy w wiadomościach e-mail programu Outlook, które uruchamia Firefoksa, zajmuje około minuty. Samo uruchomienie Firefoksa jest natychmiastowe - mam dysk SSD i bardzo szybki procesor. (2) otwieranie dokumentów Word dołączonych do wiadomości e-mail programu Outlook również zajmuje zaskakująco dużo czasu.

Jedyną wspólną cechą tych dwóch jest to, że używają mechanizmu DDE, o ile się nie mylę, do wysyłania otwartego polecenia DDE do aplikacji. W systemie Windows XP problem ten można czasem rozwiązać, usuwając zaznaczenie pola wyboru „Użyj DDE” w odwzorowaniu typów plików, jednak nie mogę znaleźć żadnego odpowiednika w systemie Windows 7.

Zobacz tutaj kogoś, kto ma ten sam problem. Zobacz tutaj więcej dowodów na to, że DDE jest super-super-wolne.

Joel Spolsky
źródło
Może monitorowanie programu outlook.exe za pomocą Process Explorer może dostarczyć interesujących informacji: technet.microsoft.com/en-us/sysinternals/bb896653.aspx
John T
spróbuje następnym razem, gdy to się stanie
Joel Spolsky
Zauważyłem coś podobnego na XP, gdzie otwieranie dowolnego typu pliku przez DDE wydaje się zawieszać Eksploratora na około 15 sekund. Jestem przekonany, że przyczyną tego jest Outlook 2007, ponieważ problem zniknie, jeśli całkowicie zamknę program Outlook. Po ponownym uruchomieniu programu Outlook problem nie pojawia się natychmiast, ale w ciągu kilku minut powraca do robienia tego samego.
Charlie

Odpowiedzi:

5

Jeśli w jakiś sposób Internet Explorer działa wolno, klikanie łączy z pakietu Office będzie również wolne, nawet jeśli nie używasz Internet Explorera jako domyślnej przeglądarki. Więc: sprawdź, czy Internet Explorer nadal działa poprawnie.

Chociaż wydajesz się pewny, że to wina DDE, Office ma zaskakująco dziwną funkcję: najpierw używa komponentu Internet Explorer, aby sprawdzić, czy adres URL, który klikniesz, jest prawidłowy. Nie identyfikuje się jako Internet Explorer; w dziennikach dostępu można zobaczyć:

User Agent: Microsoft Office Existence Discovery

Następnie przekazuje wynikowy adres URL domyślnej przeglądarce. To jest:

  • Jeśli ukryte wywołanie adresu URL powoduje pewne przekierowanie, domyślna przeglądarka nie otrzymuje nawet oryginalnego adresu URL, ale przekierowany adres URL.

  • Jeśli witryna internetowa z jakiegoś powodu blokuje Agent użytkownika „Wykrywanie istnienia pakietu Microsoft Office” lub jeśli ustawienia programu Internet Explorer w jakiś sposób uniemożliwiają prawidłowy dostęp do witryny, wówczas link może wydawać się martwy, a przy normalnej przeglądarce działałby dobrze.

Czy zastanawiałeś się kiedyś, dlaczego przeglądarka przekierowuje Cię na stronę logowania po kliknięciu linków z pakietu Office? Racja: jeśli Internet Explorer nie jest uwierzytelniany na stronie internetowej (szczególnie jeśli nie jest to domyślna przeglądarka), niektóre witryny mogą odpowiedzieć przekierowaniem na stronę logowania, dzięki czemu Office zapomni o adresie URL, który faktycznie kliknąłeś ...

Kilka dodatkowych szczegółów na temat tego zabawnego irytującego „Wykrywania protokołu Microsoft Office” w opisie posta na blogu Microsoft Office Existence Discovery Protocol :

Podczas otwierania dokumentów z lokalizacji adresu URL w pakiecie Microsoft Office 2007 biblioteka Office może wysłać do serwera WWW żądanie HEAD HTTP o otwarcie adresu URL. To żądanie jest wysyłane z zestawem User-Agent ustawionym na „Microsoft Office Existence Discovery”. To połączenie jest nowością w pakiecie Office 2007.

Żądanie HEAD ma na celu sprawdzenie, czy treść istnieje pod adresem URL jako dokument, a nie tylko jako zasób tempa przesyłany strumieniowo do sesji tylko do odczytu. Wywołanie będzie również próbowało uzyskać czas ostatniej modyfikacji treści zwróconej przez serwer WWW w odpowiedzi HEAD.

[...]

To wywołanie występuje przy wszystkich próbach otwarcia adresu URL, nawet jeśli nie wymaga się edycji jako takiej. W rezultacie możliwe jest, że dodatkowe połączenie internetowe (wykonane z przestrzeni procesowej aplikacji Office w jej sesji sieciowej, a nie przeglądarki internetowej w oddzielnej sesji) może powodować, że niektórzy użytkownicy zobaczą dodatkowe monity o uwierzytelnienie (401) lub utratę stanu sesji i niepotrzebnego przekierowania (302) na stronę logowania lub inny formularz opinii. Jest to oczekiwane zachowanie.

Wydaje się, że można to wyłączyć za pomocą rejestru; zobacz moją odpowiedź w MS Word sprawdzanie poprawności linków po kliknięciu .

Arjan
źródło
Dzięki! Podejrzewałem, że program Outlook pobierał linki przez jakiś czas, ale potwierdziłeś to. Co za głupia cecha.
Bogaty
4

Zbliżam się trochę.

Ponowne uruchomienie rozwiązało problem. :) Nie to, że jest to trwałe rozwiązanie ...

Według programisty Microsoftu, Raymonda Chena , DDE powinno być przestarzałe, ale wydaje się, że wszyscy nadal go używają.

Kłopot z DDE, mówi, polega na tym, że jest on współpracujący, a jedna zawieszona aplikacja może powodować, że wszystkie inne aplikacje nie reagują poprawnie, gdy próbują użyć DDE.

W moim przypadku ponowne uruchomienie naprawiło problem, ponieważ zamknął jakąkolwiek aplikację, która nie reagowała poprawnie na komunikaty DDE.

Typowym rozwiązaniem tego problemu w ramach czasowych systemu Windows XP było odznaczenie pola USE DDE w module obsługi typów plików, ale to pole wyboru wydaje się już nie istnieć w systemie Windows 7. Nawet jeśli DDE jest przestarzałe, aplikacje nadal rejestrują go w rejestrze, więc głupie aplikacje, takie jak Outlook 2007, nadal używają go do uruchamiania hiperłączy.

To rozwiązanie nie było zbyt przydatne, ponieważ nawet głupsze aplikacje, takie jak Firefox, tak bardzo chciały korzystać z DDE, że same REREGISTOWAŁYby SIĘ, jak gdyby korzystały z DDE przy każdym uruchomieniu. Jedynym trwałym rozwiązaniem była zmiana ustawień bezpieczeństwa odpowiedniego klucza w rejestrze, aby Firefox nie miał możliwości pisania na nim.

Nadal nie jestem bardzo zadowolony z tej odpowiedzi.

Joel Spolsky
źródło
2

Miałem podobny problem nie tak dawno temu, a problem był zdecydowanie z Outlookiem, stał się martwy, wolno otwierający linki i załączniki. w moim przypadku był to plik PST, który przekroczył 4 GB.

Spróbuj skompaktować plik PST lub OST:

  1. Narzędzia | Ustawienia konta
  2. Kliknij Data Fileszakładkę
  3. Wybierz swoją skrzynkę pocztową i kliknij Settings
  4. [Tryb wymiany] Na Advancedkarcie kliknij przyciskOffline Folder File Settings
  5. Kliknij Compact Now

MSKB ma jeszcze kilka wskazówek: jak rozwiązywać problemy z wydajnością w programie Outlook 2007

Joel Spolsky
źródło
Spróbuję spakować plik offline ... w moim przypadku jest to plik OST i ma tylko 1 GB.
Joel Spolsky
ZOMG, to było to! Naprawiono go podczas kompakowania pliku OST !!!
Joel Spolsky
edytowane w celu dodania szczegółowych instrukcji na wypadek, gdyby ktoś znalazł to w przyszłości
Joel Spolsky
AAH! Rozmawiałem wkrótce. To nie naprawiło tego. Powody, dla których tak myślałem, są zbyt zawstydzające, aby tu wymienić. : - Naprawdę uważam, że jest to w jakiś sposób związane z mechanizmem DDE, ponieważ w przeszłości ten problem można było tymczasowo rozwiązać, usuwając wpisy DDE, które Firefox umieścił w rejestrze
Joel Spolsky
2
cóż, przynajmniej twoje pliki pamięci programu Outlook otrzymały darmową konserwację :)
1

Wiem, że stare pytanie, ale tu jest ... Po wypróbowaniu kilku innych sugestii w końcu naprawiłem problem, uruchamiając instalację naprawczą w pakiecie Microsoft Office.

Wszystkie programy uruchomione przez DDE (FireFox, Excel i inne) są teraz uruchamiane normalnie bez opóźnień.

TimA
źródło
1

Korzystam z XP z pakietem Office 2007. Początkowo próbowałem wielu rozwiązań omawiających użycie „% 1” i wyłączających DDE w różnych rozszerzeniach plików, ale wydawało się, że działa tylko w przypadku wybranych rozszerzeń i tylko wtedy, gdy zostały uruchomione z niektórych lokalizacji . (Tj. Lauches z paska narzędzi szybkiego uruchamiania, a Outlook nie zawsze przyspieszał.)

Wypróbowałem wszystkie poniższe rozwiązania, gdy odkryłem ten sam problem. Jeden z nich wydaje się działać, choć nie jestem pewien, który to był. Nigdy nie zidentyfikowałem przyczyny źródłowej, chociaż problem pojawił się po raz pierwszy podczas tworzenia kopii zapasowej, którą wykonywałem na dysku zewnętrznym, a także podczas otwierania raczej starego pliku pst programu Outlook. W pewnym momencie na krótko przed zauważeniem problemu wystąpił jakiś błąd (ODBC?) Podczas próby wyeksportowania starego kalendarza programu Outlook. Jestem podejrzany, że jedno z tych działań mogło być powiązane.

  1. Menu Start | Uruchom | Cmd | chkdsk c: \ / F (Opcjonalnie zrestartowałem terminal, gdy rozwiązanie się zaprezentowało, chociaż wypróbowałem rozwiązania 2 i 3 przed faktycznym ponownym uruchomieniem).

  2. Zweryfikowałem, że Network DDE i DDE DSDM zostały wyłączone w moich usługach (już były).

  3. Zweryfikowałem, że ostatnio nie zainstalowałem nic nowego, co mogłoby przeszkadzać (nie zrobiłem).

  4. Start | Ustawienia | Panel sterowania | Ustaw dostęp do programu i ustawienia domyślne | Niestandardowe | Wybrałem moje opcje (używam programu Outlook do obsługi poczty e-mail i przeglądarki Firefox jako przeglądarki). Kiedy to zrobiłem, Microsoft naprawił coś. W tym momencie zrestartowałem (z opcji 1) i po uruchomieniu chkdsk wszystko wróciło do normy.

Przeczytałem również, że niektórzy ludzie odnieśli sukces po ponownej instalacji pakietu Office, ale zamierzałem użyć tego jako ostateczności, ponieważ nie miałem pod ręką dysków.

Powodzenia.

Biblioteka publiczna w Hebert
źródło
1

Wypróbowałem wszystkie powyższe sugestie bezskutecznie. Bardzo frustrujące jest czekanie pełnej minuty po kliknięciu hiperłącza, zanim wyświetli się w przeglądarce Firefox. A jeśli klikniesz więcej niż raz, każde kliknięcie zostanie wyświetlone jako inna karta.

Oto moje obejście, które działa, ale wciąż jest denerwujące.

Gdy chcesz aktywować hiperłącze:

  1. Kliknij prawym przyciskiem myszy - nie klikaj lewym przyciskiem myszy, ponieważ spowoduje to uruchomienie 60-sekundowego oczekiwania;
  2. Skopiuj pokazany internetowy adres URL, a następnie
  3. Po prostu wklej link do przeglądarki i naciśnij Enter. Twoja strona natychmiast się pojawi.

Działa to za każdym razem, ponieważ omijasz błąd w Outlooku, w jakiś sposób uniemożliwiając nam bezpośrednie połączenie.

Mike Long
źródło
0

Ta odpowiedź jest w pewnym stopniu związana z Twoim problemem i może dać ci wskazówkę, aby poszukać innej poprawki. Przeczytaj szybko: http://support.microsoft.com/kb/929867 Powodzenia.

Robert
źródło
to nie działa, ponieważ pole wyboru „Użyj DDE”, o którym mówią, nie znajduje się w systemie Windows 7
Joel Spolsky
-1

Aby rozwiązać ten problem, wykonaj następujące czynności:

  1. Ustaw Internet Explorera na domyślną przeglądarkę (w moim systemie muszę używać Safari, aby ustawić IE na domyślnie wystarczająco dziwnie)
  2. Restart
  3. Po ustawieniu przeglądarki Firefox, aby sprawdzić, czy jest to domyślna przeglądarka, otwórz przeglądarkę Firefox i wybierz opcję Tak, aby ustawić ją jako domyślną przeglądarkę.

Muszę to robić raz w tygodniu i nie znalazłem większego powodu.

Ryatkins
źródło