Phần bổ trợ VSTO Outlook của tôi đột nhiên ngừng hoạt động trên một máy của khách hàng (nó không tải, không có thông báo lỗi) và tôi đang gặp khó khăn với việc khắc phục sự cố. Máy là Windows 7 x86, Outlook 2007. Phần bổ trợ được viết bằng Visual Studio 2008 và sử dụng VSTO 2005 với PIA 2003 (vì chúng tôi cũng cần hỗ trợ cả Outlook 2003). Nó hoạt động hoàn toàn tốt trên các máy khác.
Đây là những gì tôi đã cố gắng để có được kết quả khắc phục sự cố hữu ích:
- Thêm
VSTO_SUPPRESSDISPLAYALERTS
biến môi trường (đặt thành0
) . - Khởi động Outlook với quyền quản trị.
- Nhìn vào nhật ký sự kiện.
Không có gì. Bổ trợ sẽ không tải mà không đưa ra bất kỳ dấu hiệu nào về lý do. Tôi cũng đã kiểm tra "các nghi phạm thông thường" (chính sách CAS, cài đặt PIA, LoadBehavior trong sổ đăng ký, cài đặt lại VSTO và phần bổ trợ).
Một số nhận xét khác:
LoadBehavior
trong sổ đăng ký vẫn ở3
.- Phần bổ trợ hiển thị là "bị vô hiệu hóa" trong Outlook. Kiểm tra hộp kiểm của nó trong "COM add-in" không có gì (không có lỗi, hộp kiểm được xóa một lần nữa khi nhập biểu mẫu lần thứ hai).
- Nó hoạt động hoàn toàn tốt trên các máy của khách hàng khác và nó hoạt động hoàn toàn tốt trên máy này. (Không, khách hàng không thể cho tôi biết những gì đã thay đổi trên máy của họ.)
- Tôi có một
Trace.WriteLine
thông báo ở đầu mã của mình (dòng đầu tiên trongThisAddIn_Startup
trình xử lý), không đạt được (tôi đã kiểm tra bằng DebugView ). Do đó, lý do không tải không phải là ngoại lệ trong phần bổ trợ của tôi mà là do VSTO không tải được phần bổ trợ hoặc của Outlook để tải VSTO.
Thay vì gỡ lỗi ngẫu nhiên hơn ("thử cái này ...", "thử cái đó ..."), tôi thực sự muốn buộc Outlook và / hoặc VSTO cho tôi biết điều gì sai , tức là để cung cấp cho tôi một thông báo lỗi hữu ích chỉ không làm gì khi cố gắng kích hoạt add-in. Có ý kiến gì không?