OLD | NEW |
1 #include "PluginStdAfx.h" | 1 #include "PluginStdAfx.h" |
2 | 2 |
3 #include "PluginMimeFilterClient.h" | 3 #include "PluginMimeFilterClient.h" |
4 //#include "AdPluginMimeFilter.h" | 4 //#include "AdPluginMimeFilter.h" |
5 #include "PluginClient.h" | 5 #include "PluginClient.h" |
6 #include "PluginWbPassThrough.h" | 6 #include "PluginWbPassThrough.h" |
7 | 7 |
8 | 8 |
9 typedef PassthroughAPP::CMetaFactory<PassthroughAPP::CComClassFactoryProtocol,WB
Passthru> MetaFactory; | 9 typedef PassthroughAPP::CMetaFactory<PassthroughAPP::CComClassFactoryProtocol,WB
Passthru> MetaFactory; |
10 | 10 |
11 | 11 |
12 CPluginMimeFilterClient::CPluginMimeFilterClient() : m_classFactory(NULL), m_spC
FHTTP(NULL) | 12 CPluginMimeFilterClient::CPluginMimeFilterClient() : m_classFactory(NULL), m_spC
FHTTP(NULL) |
13 { | 13 { |
14 » // Should only be called once | 14 // Should only be called once |
15 » // We register mime filters here | 15 // We register mime filters here |
16 » // Register asynchronous protocol | 16 // Register asynchronous protocol |
17 » CComPtr<IInternetSession> spSession; | 17 CComPtr<IInternetSession> spSession; |
18 » m_spCFHTTP = NULL; | 18 m_spCFHTTP = NULL; |
19 » HRESULT hr = ::CoInternetGetSession(0, &spSession, 0); | 19 HRESULT hr = ::CoInternetGetSession(0, &spSession, 0); |
20 » if (FAILED(hr) || !spSession) | 20 if (FAILED(hr) || !spSession) |
21 » { | 21 { |
22 » » DEBUG_ERROR_LOG(hr, PLUGIN_ERROR_SESSION, PLUGIN_ERROR_SESSION_G
ET_INTERNET_SESSION, "MimeClient::CoInternetGetSession failed"); | 22 DEBUG_ERROR_LOG(hr, PLUGIN_ERROR_SESSION, PLUGIN_ERROR_SESSION_GET_INTERNET_
SESSION, "MimeClient::CoInternetGetSession failed"); |
23 » » return; | 23 return; |
24 » } | 24 } |
25 | 25 |
26 » hr = MetaFactory::CreateInstance(CLSID_HttpProtocol, &m_spCFHTTP); | 26 hr = MetaFactory::CreateInstance(CLSID_HttpProtocol, &m_spCFHTTP); |
27 » if (FAILED(hr) || !m_spCFHTTP) | 27 if (FAILED(hr) || !m_spCFHTTP) |
28 » { | 28 { |
29 » » DEBUG_ERROR_LOG(hr, PLUGIN_ERROR_SESSION, PLUGIN_ERROR_SESSION_C
REATE_HTTP_INSTANCE, "MimeClient::CreateInstance failed"); | 29 DEBUG_ERROR_LOG(hr, PLUGIN_ERROR_SESSION, PLUGIN_ERROR_SESSION_CREATE_HTTP_I
NSTANCE, "MimeClient::CreateInstance failed"); |
30 » » return; | 30 return; |
31 » } | 31 } |
32 | 32 |
33 » hr = spSession->RegisterNameSpace(m_spCFHTTP, CLSID_NULL, L"http", 0, 0,
0); | 33 hr = spSession->RegisterNameSpace(m_spCFHTTP, CLSID_HttpProtocol, L"http", 0,
0, 0); |
34 » if (FAILED(hr)) | 34 if (FAILED(hr)) |
35 » { | 35 { |
36 » » DEBUG_ERROR_LOG(hr, PLUGIN_ERROR_SESSION, PLUGIN_ERROR_SESSION_R
EGISTER_HTTP_NAMESPACE, "MimeClient::RegisterNameSpace failed"); | 36 DEBUG_ERROR_LOG(hr, PLUGIN_ERROR_SESSION, PLUGIN_ERROR_SESSION_REGISTER_HTTP
_NAMESPACE, "MimeClient::RegisterNameSpace failed"); |
37 » » return; | 37 return; |
38 » } | 38 } |
39 } | 39 } |
40 | 40 |
41 | 41 |
42 CPluginMimeFilterClient::~CPluginMimeFilterClient() | 42 CPluginMimeFilterClient::~CPluginMimeFilterClient() |
43 { | 43 { |
44 » CComPtr<IInternetSession> spSession; | 44 CComPtr<IInternetSession> spSession; |
45 | 45 |
46 » ::CoInternetGetSession(0, &spSession, 0); | 46 ::CoInternetGetSession(0, &spSession, 0); |
47 » if (spSession) | 47 if (spSession) |
48 » { | 48 { |
49 » spSession->UnregisterNameSpace(m_spCFHTTP, L"http"); | 49 spSession->UnregisterNameSpace(m_spCFHTTP, L"http"); |
50 » » if (m_spCFHTTP != NULL) | 50 if (m_spCFHTTP != NULL) |
51 » » { | 51 { |
52 » » » m_spCFHTTP.Release(); | 52 m_spCFHTTP.Release(); |
53 » » » m_spCFHTTP = NULL; | 53 m_spCFHTTP = NULL; |
54 » » } | 54 } |
55 » } | 55 } |
56 } | 56 } |
57 | 57 |
58 void CPluginMimeFilterClient::Unregister() | 58 void CPluginMimeFilterClient::Unregister() |
59 { | 59 { |
60 » CComPtr<IInternetSession> spSession; | 60 CComPtr<IInternetSession> spSession; |
61 | 61 |
62 » ::CoInternetGetSession(0, &spSession, 0); | 62 ::CoInternetGetSession(0, &spSession, 0); |
63 » if (spSession) | 63 if (spSession) |
64 » { | 64 { |
65 spSession->UnregisterNameSpace(m_spCFHTTP, L"http"); | 65 spSession->UnregisterNameSpace(m_spCFHTTP, L"http"); |
66 » } | 66 } |
67 } | 67 } |
OLD | NEW |