В настоящее время я работаю над проектом С#, где мне нужно получить доступ к Outlook. Разработка выполняется на двух разных машинах, одна из которых имеет офис, установленный, а один из которых не работает. Ранее я задавал вопрос о том, как скомпилировать мой проект с объектом outlook com, и один из комментариев, предложенных мной для сборки первичной межсетевой сборки Office или PIA. В загруженном Office 2007 PIA существует файл msi, который должен установить несколько PIA для разных частей Office. Моя проблема в том, что это, похоже, не происходит. На моей офисной машине, после ввода
msiexec /i o2007pia.msi
в командной строке запускает установщик Windows, в котором отображается сообщение "Подождите, пока Windows настроит первичные сборки Microsoft Office 2007. Сбор необходимой информации" вместе с индикатором прогресса на уровне около 33%, после чего он исчезнет, и после чего
gacutil -l microsoft.office.interop.outlook
не дает результатов для Office 2007 (я получаю результат с версией 10.0.4504.0 и является результатом более ранней попытки установки с неправильной версией Office., но Office 2007 PIA имеют основную версию 12.)
Я вижу пару возможных объяснений, в которые я действительно не верю:
-
GAC не может обрабатывать несколько версий одной и той же сборки и поэтому не позволит мне устанавливать более новую версию.
-
Как-то я не выполняю requirements. Это в основном XPsp2 и .Net 1.1 или выше, оба из которых у меня есть. В разделе требований также упоминается, что загрузка работает с Office 2007, которую я не установил, но я не думаю, что это требование. Это связано с тем, что он не указан как требование, но также потому, что Hans Passant в комментарии к моему оригинальному вопросу был очень уверен, что PIA могут быть специально использованы для без установки Office, поэтому было бы бессмысленно иметь Office в качестве предварительного условия.
Знает ли кто-нибудь, почему PIA Office 2007 не устанавливаются правильно или что я могу сделать, чтобы приблизиться к ответу? Если вам нужна дополнительная информация, пожалуйста, дайте мне знать. Спасибо.