Communicator 2007 R2 fails to open new window when double-clicking a Contact

 

Summary:

When using Microsoft Office Communicator 2007 R2, double-clicking a Contact fails to launch a new conversation window. However, you are still able to right-click a Contact, and start an IM session by selecting “Send an Instant Message.”

 

Cause:

When double-clicking a Contact, OC 2007 R2 uses XML to initialize a new conversation window, and we’re finding several customers who have incompatible and/or legacy builds of MSXML.DLL that are encountering these failures.

 

Example Callstack:

ChildEBP RetAddr

0006f98c 00475448 communicator!CDUIBase<DirectUI::Button>::InitializeFromXML

0006f9c4 00475309 communicator!CRosterContactView::CreateInstance+0x8b

0006f9e4 004dd544 communicator!CContactManager::CreateElement+0xeb

0006f9fc 004dd563 communicator!VirtualListView::CreateElement+0x30

0006fa14 004dc3af communicator!VirtualListView::FillVisibleLink+0x122

0006fa48 004d57db communicator!VirtualListView::FillViewWithoutRefresh+0xbd

0006fa80 004f347b communicator!VirtualListView::FillView+0xa9

0006fa90 004f3489 communicator!VirtualListView::OnThaw+0x30

0006fa98 00482d69 communicator!Freezable::Thaw+0xf

0006facc 0046cd9c communicator!CContactGroupItemBase::AddItemAtIndex+0xba

0006fadc 0046d13e communicator!CContactGroupItemBase::AddItemLast+0x10

0006fb08 0046d0e3 communicator!CContactManager::AddContact+0x57

0006fb20 004b0d40 communicator!CRosterListView::OnParticipantAdded+0x3f

0006fb60 0046d2b1 communicator!CRosterListView::SetContext+0x10a

0006fb94 0046cf79 communicator!CDUIConversationFrame::InitializeChildren+0xd0

0006fbe0 00479f8b communicator!CDUIConversationFrame::Initialize+0x234

0006fc34 0045cba0 communicator!CDUIConversationFrame::EnsureConversationWindow+0xe3

0006fc60 0045bf6a communicator!CDUIConversationFrame::CreateNewWindow+0x76

0006fcac 0045cb89 communicator!CDUIConversationFrame::FindOrCreateTwoPartyConversationWindow+0xde

0006fcd0 00427ba3 communicator!ConvUI_FindOrCreateTwoPartyConversationWindow+0x1e

0006fd68 0055d909 communicator!CSelectedContacts::StartActionWithSelectedContacts+0x1a3

0006fd88 7e418734 communicator!CSelectedContacts::WndProc+0x4e

0006fdb4 7e418816 user32!InternalCallWinProc+0x28

0006fe1c 7e4189cd user32!UserCallWinProcCheckWow+0x150

0006fe7c 7e418a10 user32!DispatchMessageWorker+0x306

0006fe8c 00505efb user32!DispatchMessageW+0xf

0006fed8 005079ac communicator!COcApp::RunMessageLoop+0xa1

0006fee8 00507b85 communicator!ATL::CAtlExeModuleT<COcApp>::Run+0x1e

0006ff18 00507a9c communicator!COcApp::RunApp+0xed

0006ff30 00507a05 communicator!WinMain+0x7e

0006ffc0 7c817067 communicator!__tmainCRTStartup+0x140

0006fff0 00000000 kernel32!BaseProcessStart+0x23

Example incompatible/legacy version of MSXML.DLL:

0:008> lmvm msxml

start end module name

71130000 711b3000 msxml (export symbols) msxml.dll

    Loaded symbol image file: msxml.dll

    Image path: c:\windows\system\msxml.dll

    Image name: msxml.dll

    Timestamp: Fri Nov 05 13:10:21 1999 (38230F7D)

    CheckSum: 000850E5

    ImageSize: 00083000

    File version: 5.0.2919.6303

    Product version: 5.0.2919.6303

    File flags: 0 (Mask 3F)

    File OS: 40004 NT Win32

    File type: 2.0 Dll

    File date: 00000000.00000000

    Translations: 0409.04b0

    CompanyName: Microsoft Corporation

    ProductName: Microsoft(R) Windows (R) 2000 Operating System

    InternalName: MsXML.dll

    OriginalFilename: MsXML.dll

    ProductVersion: 5.00.2919.6303

    FileVersion: 5.00.2919.6303

    FileDescription: XML OM for Win32

    LegalCopyright: Copyright (C) Microsoft Corp. 1981-1999

Resolution:

To resolve this issue, please install XML Version 6.0 and XML Version 3.0 SP7.

Microsoft Core XML Services (MSXML) 6.0

https://www.microsoft.com/downloads/details.aspx?FamilyID=993C0BCF-3BCF-4009-BE21-27E85E1857B1&displaylang=en

 

Microsoft XML Parser (MSXML) 3.0 Service Pack 7 (SP7)

https://www.microsoft.com/downloads/details.aspx?familyid=28494391-052b-42ff-9674-f752bdca9582&displaylang=en

 

Huge credit goes to Dieter Eckstein for this solution!