Я унаследовал пользовательское приложение, которое было создано с использованием Visual Studio 2003 и .NET 2.0. Он использует Microsoft Office PIA версии 11 (для Office 2003) и первоначально запускался в Windows XP. Приложение опирается на чтение файлов Excel, Word и Powerpoint, а также Outlook для чтения файлов .PST.Приложение с использованием Microsoft Office interop v.11 с Windows 7, Microsoft Office 2010
Теперь я пытаюсь заставить это приложение работать на 64-разрядной машине Windows 7 с Office 2010. По большей части приложение работает - оно корректно читает файлы .PST и загружает электронные письма и вложения (вместе с правильными метаданными) в Sharepoint. Просто после закрытия приложения и попыток открыть продукты Microsoft Office 2010 (Word, Excel, Powerpoint, Outlook) эти программы имеют тенденцию к сбою. В сообщении об ошибке будет указано: «Microsoft _ _ перестала работать».
Глядя на зрителя событий, журналы, как правило, выглядит следующим образом:
Faulting application name: OUTLOOK.EXE, version: 14.0.6109.5005, time stamp: 0x4e79b881
Faulting module name: ntdll.dll, version: 6.1.7601.17514, time stamp: 0x4ce7ba58
Exception code: 0xc0000005
Fault offset: 0x0002e3fb
Faulting process id: 0x1b20
Faulting application start time: 0x01cd5631d6ed41d9
Faulting application path: C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE
Faulting module path: C:\WINDOWS\SysWOW64\ntdll.dll
Report Id: 2f11010e-c226-11e1-8b8d-9cb70de93ccf
После делать много просмотра, я предполагаю, что он должен делать с приложением, ссылающегося PIA версии 11 для Office 2003, а также версия, которую я имею на этом компьютере, - это версия PIA 14 для Office 2010. Кроме того, я на 100% уверен, что это приложение вызывает сбои приложений Office 2010, поскольку это происходит каждый раз, когда я запускаю это унаследованное приложение. Перезапуск компьютера исправляет эти сбои, но я бы предпочёл не перезапускать каждый раз при запуске этого приложения!
Короткая информация об обновлении исходного кода, есть ли что-нибудь, что я могу сделать, чтобы исправить эту проблему?
EDIT: У меня теперь есть доступ к Visual Studio Express 2010 (C#), и у меня есть файлы исходного кода с помощью Reflector. Поэтому, я думаю, я могу начать делать изменения кода. Я все еще получаю много ошибок, хотя, см. Мои ответы ниже ...
Это офисная надстройка (отдельные надстройки для перспективы, слова и т. Д.)? Или просто отдельное приложение, использующее PIA? Вы можете отладить надстройку и выяснить, где она не работает. Для этого вам понадобится Visual Studio и, возможно, инструмент для декомпиляции и отладки приложений сторонних разработчиков, для которых у вас нет исходного кода (Reflector Pro может это сделать). Просто слушай. В качестве обходного решения вы можете просто сохранить файл reg, чтобы отключить надстройку (предполагая ее часть надстройки кода, а не только отдельное приложение, использующее interop, вызывающий сбои) перед запуском Word? Интересно, что перезагрузка «исправляет» крах ... – JohnZaj