Author: alax
(2010/02/02 13:10) Over 2 years ago
a fix for unexpected crash of COM surrogate process on Win 7 x64
61
//
62
63
VS_VERSION_INFO VERSIONINFO
64
FILEVERSION 1, 0, 0, 223
FILEVERSION 1, 0, 0, 246
65
PRODUCTVERSION 1,0,0,1
66
FILEFLAGSMASK 0x3fL
67
#ifdef _DEBUG
...
80
VALUE "Comments", "Created by Roman Ryltsov roman@alax.info"
81
VALUE "CompanyName", "Roman Ryltsov"
82
VALUE "FileDescription", "Alax.Info DirectShow Spy Module"
83
VALUE "FileVersion", "1, 0, 0, 223"
VALUE "FileVersion", "1, 0, 0, 246"
84
VALUE "InternalName", "DirectShowSpy.dll"
85
VALUE "LegalCopyright", "Copyright © Alax.Info, Roman Ryltsov, 2008-2010"
86
VALUE "OLESelfRegister", "Yes"
26
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|Win32.ActiveCfg = Debug|Win32
27
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|Win32.Build.0 = Debug|Win32
28
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|x64.ActiveCfg = Debug|x64
29
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|x64.Build.0 = Debug|x64
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|Win32.ActiveCfg = Release Trace|Win32
30
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|Win32.Build.0 = Release Trace|Win32
31
{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|x64.ActiveCfg = Release Trace|x64
32
42
43
DECLARE_GET_CONTROLLING_UNKNOWN()
44
45
//DECLARE_QI_TRACE(CSpy)
DECLARE_QI_TRACE(CSpy)
46
47
BEGIN_COM_MAP(CSpy)
48
COM_INTERFACE_ENTRY(ISpy)
163
}
164
HRESULT FinalConstruct() throw()
165
{
166
InternalAddRef();
_ATLTRY
167
168
m_bIsAggregated = IsAggregated();
169
226
227
_ATLCATCH(Exception)
228
229
230
_A(InternalRelease() > 0);
_C(Exception);
231
232
233
// NOTE: x64 build experiences a problem under COM Surrogate process that we're already being released to zero while still in this method
234
if(InternalRelease() <= 0)
235
return E_UNEXPECTED;
return S_OK;
236
237
VOID FinalRelease() throw()
238
FILEVERSION 1, 0, 0, 223FILEVERSION 1, 0, 0, 246VALUE "FileVersion", "1, 0, 0, 223"VALUE "FileVersion", "1, 0, 0, 246"{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|Win32.ActiveCfg = Debug|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|Win32.ActiveCfg = Debug|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|Win32.Build.0 = Debug|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|Win32.Build.0 = Debug|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|x64.ActiveCfg = Debug|x64{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|x64.ActiveCfg = Debug|x64{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Debug|x64.Build.0 = Debug|x64{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|Win32.ActiveCfg = Release Trace|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|Win32.ActiveCfg = Release Trace|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|Win32.Build.0 = Release Trace|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|Win32.Build.0 = Release Trace|Win32{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|x64.ActiveCfg = Release Trace|x64{1A5DA4E5-ED09-476A-9A42-538D0DDA3FB9}.Release Trace|x64.ActiveCfg = Release Trace|x64//DECLARE_QI_TRACE(CSpy){{{{{{