OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // chrome_tab.cc : Implementation of DLL Exports. | 5 // chrome_tab.cc : Implementation of DLL Exports. |
6 | 6 |
7 // Need to include this before the ATL headers below. | 7 // Need to include this before the ATL headers below. |
8 #include "chrome_frame/chrome_tab.h" | 8 #include "chrome_frame/chrome_tab.h" |
9 | 9 |
10 #include <atlsecurity.h> | 10 #include <atlsecurity.h> |
(...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
605 return ChromeFrameActivex::UpdateRegistry(reg); | 605 return ChromeFrameActivex::UpdateRegistry(reg); |
606 } | 606 } |
607 | 607 |
608 HRESULT RegisterElevationPolicy(bool reg, bool is_system) { | 608 HRESULT RegisterElevationPolicy(bool reg, bool is_system) { |
609 HRESULT hr = S_OK; | 609 HRESULT hr = S_OK; |
610 if (base::win::GetVersion() >= base::win::VERSION_VISTA) { | 610 if (base::win::GetVersion() >= base::win::VERSION_VISTA) { |
611 // Register the elevation policy. This must succeed for Chrome Frame to | 611 // Register the elevation policy. This must succeed for Chrome Frame to |
612 // be able launch Chrome when running in low-integrity IE. | 612 // be able launch Chrome when running in low-integrity IE. |
613 hr = _AtlModule.UpdateRegistryFromResourceS(IDR_CHROMEFRAME_ELEVATION, reg); | 613 hr = _AtlModule.UpdateRegistryFromResourceS(IDR_CHROMEFRAME_ELEVATION, reg); |
614 if (SUCCEEDED(hr)) { | 614 if (SUCCEEDED(hr)) { |
615 hr = RefreshElevationPolicy(); | 615 // Ignore failures since old versions of IE 7 (e.g., 7.0.6000.16386, which |
| 616 // shipped with Vista RTM) do not export IERefreshElevationPolicy. |
| 617 RefreshElevationPolicy(); |
616 } | 618 } |
617 } | 619 } |
618 return hr; | 620 return hr; |
619 } | 621 } |
620 | 622 |
621 HRESULT RegisterProtocol(bool reg, bool is_system) { | 623 HRESULT RegisterProtocol(bool reg, bool is_system) { |
622 return _AtlModule.UpdateRegistryFromResourceS(IDR_CHROMEPROTOCOL, reg); | 624 return _AtlModule.UpdateRegistryFromResourceS(IDR_CHROMEPROTOCOL, reg); |
623 } | 625 } |
624 | 626 |
625 HRESULT RegisterBhoClsid(bool reg, bool is_system) { | 627 HRESULT RegisterBhoClsid(bool reg, bool is_system) { |
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
916 HRESULT hr = CustomRegistration(ALL, FALSE, false); | 918 HRESULT hr = CustomRegistration(ALL, FALSE, false); |
917 return hr; | 919 return hr; |
918 } | 920 } |
919 | 921 |
920 // Object entries go here instead of with each object, so that we can move | 922 // Object entries go here instead of with each object, so that we can move |
921 // the objects to a lib. Also reduces magic. | 923 // the objects to a lib. Also reduces magic. |
922 OBJECT_ENTRY_AUTO(CLSID_ChromeFrameBHO, Bho) | 924 OBJECT_ENTRY_AUTO(CLSID_ChromeFrameBHO, Bho) |
923 OBJECT_ENTRY_AUTO(__uuidof(ChromeActiveDocument), ChromeActiveDocument) | 925 OBJECT_ENTRY_AUTO(__uuidof(ChromeActiveDocument), ChromeActiveDocument) |
924 OBJECT_ENTRY_AUTO(__uuidof(ChromeFrame), ChromeFrameActivex) | 926 OBJECT_ENTRY_AUTO(__uuidof(ChromeFrame), ChromeFrameActivex) |
925 OBJECT_ENTRY_AUTO(__uuidof(ChromeProtocol), ChromeProtocol) | 927 OBJECT_ENTRY_AUTO(__uuidof(ChromeProtocol), ChromeProtocol) |
OLD | NEW |