| // Copyright 2025 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_APP_COMMAND_H_ |
| #define CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_APP_COMMAND_H_ |
| |
| #include <windows.h> |
| |
| #include <wrl/client.h> |
| |
| #include <string> |
| #include <utility> |
| |
| #include "base/types/expected.h" |
| #include "chrome/updater/app/server/win/updater_legacy_idl.h" |
| |
| // Explicitly allows the Google Update service to impersonate the client since |
| // some COM code elsewhere in the browser process may have previously used |
| // CoInitializeSecurity to set the impersonation level to something other than |
| // the default. |
| // Ignores errors since an attempt to use Google Update may succeed |
| // regardless. |
| void ConfigureProxyBlanket(IUnknown* interface_pointer); |
| |
| // Gets the AppCommand with the given name, ready to be invoked by the Google |
| // Updater. |
| base::expected<Microsoft::WRL::ComPtr<IAppCommandWeb>, HRESULT> |
| GetUpdaterAppCommand(const std::wstring& command_name); |
| |
| #endif // CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_APP_COMMAND_H_ |