Zasadniczo ten błąd pojawia się, jeśli typ pliku jest skonfigurowany do korzystania z DDE (stary protokół komunikacyjny w stylu Windows-3.x między aplikacjami działającymi na tym samym komputerze) do otwierania pliku.
Znajdziesz go w typach plików w opcjach folderów eksploratora (może gdzieś indziej w systemie Windows 7, ale będzie miejsce, w którym administrator może skonfigurować pliki, które będą otwierane za pomocą których programów).
Gdy ta opcja „Użyj DDE” jest zaznaczona, Windows najpierw sprawdzi, czy program jest już uruchomiony, a następnie (jeśli tak się stanie) wyśle mu komunikat DDE (składający się z 3 tekstów, „Aplikacja”, „Temat” i „Wiadomość” ). W ten sposób można uniknąć ponownego otwarcia programu, nawet jeśli jest już uruchomiony. Gdy program nie działa, uruchamia się normalnie. W przypadku awarii połączenia DDE pojawi się okno dialogowe, o którym wspomniasz, i po prostu ponownie uruchomi program normalnie.
Zatem najłatwiejszym rozwiązaniem jest wyłączenie „Użyj DDE” dla rozszerzenia pliku bazy danych (chyba .mdb). Jedyna wada tego: gdy otworzysz bazę danych i Access już działa, Windows otworzy drugą instancję Access, która z kolei zauważy pierwszą i wyśle komunikat DDE, a następnie wyjdzie. I. e. niepotrzebnie uruchamiasz program Access, aby można go było od razu zamknąć. Ale obecnie w przypadku szybkich procesorów i dysków twardych wydaje mi się, że jest to dopuszczalne :-)
Bardziej złożoną poprawką byłoby sprawdzenie, czy coś jest nie tak w tych ustawieniach (np. Zły temat lub niewłaściwa aplikacja) i naprawienie tego. Wymagałoby to dostępu do innej (być może wirtualnej) maszyny, na której działają otwieranie plików, dzięki czemu można porównać konfigurację DDE.
EDYCJA: Według tej witryny ta karta została upuszczona w systemie Vista. Zawsze możesz to zrobić ręcznie w rejestrze: wyszukaj HKEY_CLASSES_ROOT\.mdb
jego wartość domyślną (powiedzmy, że jest mdbfile
), a następnie spójrz na tę wartość domyślną ( HKEY_CLASSES_ROOT\mdbfile\shell\open\ddeexec
).