MS Access DB Engine (32-bit) z Office 64-bit
Mamy obecnie poważny problem z użyciem silnika bazy danych Microsoft Access 2010. Silnik jest w 64-bitowych i 32-bitowych formach, co jest dobre. Jednak najwyraźniej musisz zawsze instalować wersję 32-bitową, jeśli proces hosta jest zawsze 32-bitowy. Dobra, damy radę.
Nasze oprogramowanie zajmuje się wieloma starszymi komponentami, które są 32-bitowe, a wiele z nich jest w kodzie VB6, który generuje 32-bitowy montaż. Tak więc zakładamy, że sterownik musi być również zainstalowany jako 32-bitowy. Rzeczywiście, gdy instalujemy 32-bitowe sterowniki na 64-bitowym komputerze i uruchamiamy nasze 32-bitowe aplikacje, działa to poprawnie.
Jednak problem zaczyna się, gdy Office 2010 64-bit jest zainstalowany w systemie. Zaufaj mi, staraliśmy się edukować użytkowników, że 64-bitowy pakiet Office jest w dużej mierze niepotrzebny, bez skutku. Ponieważ komputery schodzą z linii montażowej z zainstalowanymi wersjami 64-bitowymi, nie jesteśmy w stanie nadążyć za żądaniami pomocy technicznej, gdy nasze oprogramowanie coś zepsuje. Albo 64-bitowe Biuro łamie nasze instalacja, lub nasza instalacja psuje ich wersję biurową, ale i tak nie jest ładna. Kolejnym problemem jest to, że inne niż starsze oprogramowanie czasami instaluje sterowniki 64-bitowe (tak jak powinny), a obie wersje po prostu nie współistnieją w żaden rozsądny sposób. Albo nasze oprogramowanie się psuje, albo ich Oprogramowanie się psuje.
Czy udało się komuś znaleźć sposób, aby sterowniki 32-bitowe współistniały z instalacjami 64-bitowymi? Widziałem, że instalacja z/passive
flagą pozwala na zainstalowany, a nasz instalator używa pasywnego. Oba są instalowane, ale raz w systemie albo nasze oprogramowanie przestaje działać, albo Biuro stale naprawia swoją instalację. Czy jest jakiś rozsądny sposób, aby to zadziałało? 6 answers
Oto obejście instalacji 64-bitowej wersji programu Microsoft Access Database Engine 2010 redistributable na systemie z zainstalowaną 32-bitową wersją pakietu MS Office:
- Sprawdź 64-bitowy klucz rejestru "HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Office \ 14.0 \ Common \ FilesPaths" przed zainstalowaniem 64-bitowej wersji programu Microsoft Access Database Engine 2010 redistributable.
- Jeśli nie zawiera " mso.dll " wartość rejestru, następnie trzeba będzie zmienić nazwę lub usunąć wartość po zainstalowaniu 64-bitowej wersji programu Microsoft Access Database Engine 2010 redistributable na systemie z zainstalowaną 32-bitową wersją pakietu MS Office.
- użyj parametru wiersza poleceń "/ passive", aby zainstalować redystrybucję, np. "C:\directory path\AccessDatabaseEngine_x64.exe " / passive
- Usuń lub zmień nazwę " mso.dll " wartość rejestru, która zawiera ścieżkę do 64-bitowej wersji MSO.DLL (i nie powinny być używane przez 32-bitowe wersje MS Office).
Teraz możesz uruchomić 32-bitową aplikację MS Office bez problemu z "ponowną konfiguracją". Należy zauważyć, że " mso.wartość rejestru dll" będzie już obecna, jeśli zainstalowana jest 64-bitowa wersja pakietu MS Office. W takim przypadku wartość nie powinna być usuwana ani zmieniana na inną.
Również jeśli nie chcesz używać parametru wiersza poleceń "/passive " możesz edytować AceRedist.plik msi do usunięcia sprawdzania architektury MS Office:
- Pobierz i zainstaluj Microsoft Orka: http://msdn.microsoft.com/en-us/library/windows/desktop/aa370557 (v=vs.85). aspx
- rozpakuj AccessDatabaseEngine.exe lub AccessDatabaseEngine_x64.plik exe Otwórz AceRedist.plik msi w orce
- wyszukaj dwa wiersze tabeli zawierające akcję "CheckOfficeArchitecture" i upuść te wiersze
- Zapisz zaktualizowaną AceRedist.plik msi
Możesz teraz użyć tego pliku, aby zainstalować Microsoft Access Database Engine 2010 redistributable na system, w którym zainstalowana jest" sprzeczna " wersja MS Office (np. wersja 64-bitowa w systemie z 32-bitową wersją MS Office) Upewnij się, że zmieniłeś nazwę "mso.dll " wartość rejestru, jak wyjaśniono powyżej (w razie potrzeby).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-20 15:35:13
Nienawidzę odpowiadać na własne pytania, ale w końcu znalazłem rozwiązanie, które faktycznie działa(korzystanie z komunikacji socket między usługami może rozwiązać problem, ale stwarza jeszcze więcej problemów). Ponieważ nasza baza danych jest przestarzała, wymaga tylko Microsoft.ACE.OLEDB.12.0
w łańcuchu połączeń. Okazuje się, że było to również zawarte w Office 2007 (i MSDE 2007), gdzie dostępna jest tylko Wersja 32-bitowa. Tak więc zamiast instalować MSDE 2010 32-bit, instalujemy MSDE 2007 i działa tylko dobrze. Inne aplikacje mogą następnie zainstalować 64-bitowy MSDE 2010 (lub 64-bitowy Office 2010) i nie jest to sprzeczne z naszą aplikacją.
Jak dotąd wydaje się, że jest to akceptowalne rozwiązanie dla wszystkich środowisk systemu Windows.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-17 14:14:45
Zainstaluj wersję 2007, wydaje się, że jeśli zainstalujesz wersję przeciwną do wersji pakietu Office, którego używasz, możesz to zrobić.
Http://www.microsoft.com/en-us/download/details.aspx?id=23734
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-16 06:42:44
Podobne podejście do odpowiedzi @ Peter Coppins. To, myślę, jest nieco łatwiejsze i nie wymaga użycia narzędzia Orca:
Sprawdź klucz rejestru "HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Office \ 14.0 \ Common \ FilesPaths" i upewnij się, że wartość " mso.dll " nie jest obecny. Jeśli jest obecny, wydaje się, że pakiet Office 64-bit jest zainstalowany i nie powinieneś potrzebować tego obejścia.
Pobierz Microsoft Access Database Engine 2010 Redistributable .
-
Z linii poleceń uruchom: AccessDatabaseEngine_x64.exe / passive
(uwaga: ten instalator po cichu się zepsuł lub nie powiódł, więc rozpakowałem komponenty i uruchomiłem: AceRedist.MSI / passive I to zainstalowane dobrze. Może Windows 10.)
- Usuń lub zmień nazwę " mso.wartość dll "w kluczu" HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Office \ 14.0 \ Common \ FilesPaths".
Źródło: Jak zainstalować 64-bit Sterowniki bazy danych Microsoft wraz z 32-bitowym pakietem Microsoft Office
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-26 13:24:01
Miałem bardziej szczegółowy komunikat o błędzie, który stwierdził, aby usunąć "Office 16 Click-to-Run Extensibility Component"
Naprawiłem to wykonując kroki w https://www.tecklyfe.com/fix-for-microsoft-office-setup-error-please-uninstall-all-32-bit-office-programs-office-15-click-to-run-extensibility-component/
- przejdź do Start > Run (lub Winkey + R)
- wpisz "instalator" (który otwiera folder%windir % installer), upewnij się, że wszystkie pliki są widoczne w systemie Windows (Folder Ustawienia)
- Dodaj kolumnę "temat" (i ustaw szerokość co najmniej 400 pikseli) - kliknij prawym przyciskiem myszy na nagłówkach kolumn, kliknij Więcej, a następnie znajdź temat
- Sortuj w kolumnie temat i przewiń w dół, aż znajdziesz nazwę wymienioną na ekranie błędu ("Office 16 Click-to-Run Extensibility Component")
- Kliknij prawym przyciskiem myszy MSI i wybierz odinstaluj
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-27 09:58:45
Jeśli obie wersje programu Microsoft Access Database Engine 2010 nie mogą współistnieć, to jedynym rozwiązaniem jest skarga do Microsoft, dotyczące ładowania 64-bitowych wersji tego w 32-bitowej aplikacji jest niemożliwe bezpośrednio, co można zrobić, to usługa, która działa w 64-bitowej, która komunikuje się z inną 32-bitową usługą lub aplikacją za pośrednictwem rur lub gniazd sieciowych, ale może to wymagać znacznego wysiłku.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-14 19:52:54