Тони упомянул об этом в своей длинной строке комментариев, но это звучит в точности как дуэльная проблема с регистрацией в Access. Я не использовал A2007 до недавнего времени (у меня была установлена среда выполнения, чтобы проверить, может ли развернутая под ним база данных, разработанная в A2003 - она могла - но я не использовал ее, так как это тестирование было полностью), и когда я запускаю A2007 после того, как я использовал A2003, он должен перенастроить себя. На днях что-то пошло не так во время реконфигурации A2003 (после последнего запуска A2007), и я получил ошибки, подобные вашей. Запуск A2007 (чтобы заново зарегистрировать все как A2007), а затем запуск A2003 (чтобы заново зарегистрировать все как A2003) устранили проблему.
Ключ заключается в том, что в случае неудачной перерегистрации Access не обязательно узнает об этом при следующем запуске, поэтому вы в конечном итоге работаете в среде, которая частично зарегистрирована для A2003 и частично для A2007. Способ восстановить это - запустить другую версию Access. То есть, если A2003 запускается без уведомления о реконфигурации, закройте его и запустите A2007, чтобы он перенастроил себя и перерегистрировал себя как реальный Access. Затем, когда вы в следующий раз запустите A2003, он перерегистрирует себя в качестве официальной версии Access, и ваше приложение A2003 должно иметь все свои ссылки в правильной форме.
Да, это очень раздражает.
И отнимает много времени.
Я не знаю, почему MS, кажется, думает, что это не нужно исправлять. Хотя я знаю, что они не дают крысиной поддержки разработчикам, которым необходимо запускать A2003 и A2007 бок о бок, есть множество конечных пользователей, у которых может быть установлено приложение времени выполнения A2007, но также установлен A2003 как часть их базовой установки Office. .
Это продолжается вечно, поэтому я сомневаюсь, что это когда-нибудь будет исправлено.