Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Unified Diff: goopdate/oneclick_process_launcher.cc

Issue 624713003: Keep only base/extractor.[cc|h]. (Closed) Base URL: https://chromium.googlesource.com/external/omaha.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « goopdate/oneclick_process_launcher.h ('k') | goopdate/package.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: goopdate/oneclick_process_launcher.cc
diff --git a/goopdate/oneclick_process_launcher.cc b/goopdate/oneclick_process_launcher.cc
deleted file mode 100644
index d2d3bf442ef587c5fbda0d0b8eff72f202443501..0000000000000000000000000000000000000000
--- a/goopdate/oneclick_process_launcher.cc
+++ /dev/null
@@ -1,89 +0,0 @@
-// Copyright 2011 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-// ========================================================================
-
-#include "omaha/goopdate/oneclick_process_launcher.h"
-
-#include "base/scoped_ptr.h"
-#include "omaha/base/scoped_ptr_address.h"
-#include "omaha/goopdate/app_command.h"
-
-namespace omaha {
-
-OneClickProcessLauncher::OneClickProcessLauncher() {}
-
-OneClickProcessLauncher::~OneClickProcessLauncher() {}
-
-STDMETHODIMP OneClickProcessLauncher::LaunchAppCommand(
- const WCHAR* app_guid, const WCHAR* cmd_id) {
- ASSERT1(app_guid);
- ASSERT1(cmd_id);
-
- if (!app_guid || !cmd_id) {
- return E_INVALIDARG;
- }
-
- CORE_LOG(L3, (_T("[OneClickProcessLauncher::LaunchAppCommand]")
- _T("[app %s][cmd %s]"), app_guid, cmd_id));
-
- // Allocate a session ID for the ping that this call will generate.
- // TODO(omaha3): Are there any situations where this control can be
- // instantiated outside of the context of an Update3Web/OneClick
- // webpage? If not, we should consider adding a function to
- // OneClickProcessLauncher() to modify the session ID it uses.
- CString session_id;
- GetGuid(&session_id);
-
- scoped_ptr<AppCommand> app_command;
- HRESULT hr = AppCommand::Load(app_guid,
- is_machine(),
- cmd_id,
- session_id,
- address(app_command));
- if (FAILED(hr)) {
- CORE_LOG(LE, (_T("[failed to load command configuration][0x%x]"), hr));
- return hr;
- }
-
- if (!app_command->is_web_accessible()) {
- return E_ACCESSDENIED;
- }
-
- if (!is_machine()) {
- // Execute directly at medium integrity for user-level mode
- scoped_process process;
- return app_command->Execute(address(process));
- }
-
- // Elevate to high integrity for machine-level mode
- CComPtr<IProcessLauncher> process_launcher;
- hr = process_launcher.CoCreateInstance(__uuidof(ProcessLauncherClass));
- if (FAILED(hr)) {
- return hr;
- }
-
- ULONG_PTR phandle = NULL;
- DWORD process_id = ::GetCurrentProcessId();
-
- hr = process_launcher->LaunchCmdElevated(
- app_guid, cmd_id, process_id, &phandle);
-
- if (SUCCEEDED(hr)) {
- ::CloseHandle(reinterpret_cast<HANDLE>(phandle));
- }
-
- return hr;
-}
-
-} // namespace omaha
« no previous file with comments | « goopdate/oneclick_process_launcher.h ('k') | goopdate/package.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698