Closed Bug 606393 Opened 14 years ago Closed 10 months ago

Install ISimple dll as a shared dll

Categories

(Core :: Disability Access APIs, defect)

All
Windows Vista
defect

Tracking

()

RESOLVED WONTFIX

People

(Reporter: m_kato, Unassigned)

Details

I installed SeaMonkey after Firefox, AccessibleMarshal.dll via COM uses SeaMonkey version. Because CLSID is same. So we should change CLSID each products (Firefox, Thunderbird and SeaMonkey).
As far as I understand it, this is not an option. The registry maps from interface IIDs to the proxy stub CLSID so that COM knows which proxy to use for each interface. Even if you have two proxy dlls with different CLSIDs, the second will overwrite the interface to proxy mapping so that the second will still get used for the ISimpleDom* interfaces. Having different CLSIDs just means your first proxy dll won't be associated with any interfaces once the second is registered. The only way this would be useful is if you had different ISimpleDom* interfaces for each application (ISimpleDomNodeFirefox, ISimpleDomNodeThunderbird, etc.), which is obviously not practical. The solution here is to install the dll as a shared dll in %systemroot%\system32, changing the version number if new interfaces get added. Installing it as a shared dll ensures that it doesn't get removed while an application that needs it is still installed. The version number ensures that a later version of the dll overrides an earlier version.
Summary: CLSID should be different each products → INSTALL isIMPLE DLL AS A SHARED DLL
Why the case is inverted?
Summary: INSTALL isIMPLE DLL AS A SHARED DLL → Install ISimple dll as a shared dll
Severity: normal → S3

ISimpleDOM is effectively deprecated for new usage. Any existing usage is either in-process (JAWS) or manages its own cross-process proxy registration (NVDA). Thus, I don't think we ever need to do this.

Status: NEW → RESOLVED
Closed: 10 months ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.