summaryrefslogtreecommitdiffstats
path: root/google_update
diff options
context:
space:
mode:
authorkuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-11-20 22:26:53 +0000
committerkuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-11-20 22:26:53 +0000
commite4cdc665ff69c7ddff0ce5740592e735a108e0b7 (patch)
treec91e1db9eb240665a18d1d6c63289638cd677585 /google_update
parent63357da39cd6d80467cdb90bb46c7933ab8609bc (diff)
downloadchromium_src-e4cdc665ff69c7ddff0ce5740592e735a108e0b7.zip
chromium_src-e4cdc665ff69c7ddff0ce5740592e735a108e0b7.tar.gz
chromium_src-e4cdc665ff69c7ddff0ce5740592e735a108e0b7.tar.bz2
- If the exe rename command fails try calling Google Update to do the same job. This works when we are logged into XP/Vista as limited rights user.
- Update Google Update idl file that has the recently added COM object. - Add --system-level to the rename command that gets added to the registry. - Remove all the code to uninstall Gears MSI. Now most of the user have been upgraded to Chrome installer that includes gears.dll. BUG=1463346 Review URL: http://codereview.chromium.org/11255 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5791 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'google_update')
-rwxr-xr-x[-rw-r--r--]google_update/google_update_idl.idl63
1 files changed, 55 insertions, 8 deletions
diff --git a/google_update/google_update_idl.idl b/google_update/google_update_idl.idl
index f92caca..a8889b8 100644..100755
--- a/google_update/google_update_idl.idl
+++ b/google_update/google_update_idl.idl
@@ -1,6 +1,9 @@
// Copyright 2006 Google Inc. All Rights Reserved.
//
// Author: Vivek Rao - vivekrao@google.com
+//
+// The proxy clsid #defined as PROXY_CLSID_IS in mk_common needs to be changed
+// anytime any interface below changes, or if a new interface is added.
import "oaidl.idl";
import "ocidl.idl";
@@ -40,15 +43,27 @@ interface IBrowserHttpRequest2 : IUnknown {
[
object,
oleautomation,
- uuid(738B2CC4-F187-48e2-A7A7-C1F0A464C8BE),
- helpstring("Google Update IBrowserLauncher Interface"),
+ uuid(128C2DA6-2BC0-44c0-B3F6-4EC22E647964),
+ helpstring("Google Update IProcessLauncher Interface"),
pointer_default(unique)
]
-interface IBrowserLauncher : IUnknown {
+interface IProcessLauncher : IUnknown {
+ // @param cmd_line The full command line to execute.
+ HRESULT LaunchCmdLine([in, string] const WCHAR* cmd_line);
+
// @param browser_type The browser to start.
// @param url The url to launch the browser with.
HRESULT LaunchBrowser([in] DWORD browser_type,
[in, string] const WCHAR* url);
+
+ // @param app_id Unique id to identify the calling client application
+ // @param event_id Unique id for the command
+ // @param caller_proc_id The process id of the calling process
+ // @param proc_handle The process handle valid in the caller's context
+ HRESULT LaunchCmdElevated([in, string] const WCHAR* app_guid,
+ [in, string] const WCHAR* cmd_id,
+ [in] DWORD caller_proc_id,
+ [out] ULONG_PTR* proc_handle);
};
typedef enum {
@@ -137,19 +152,41 @@ interface IGoogleUpdate : IUnknown {
[in] IJobObserver* observer);
};
+// IGoogleUpdateCore is an internal Omaha interface.
+[
+ object,
+ oleautomation,
+ uuid(909489C2-85A6-4322-AA56-D25278649D67),
+ helpstring("Google Update Core Interface"),
+ pointer_default(unique)
+]
+interface IGoogleUpdateCore : IUnknown
+{
+ // Runs a command elevated.
+ //
+ // @param app_id Unique id to identify the calling client application
+ // @param event_id Unique id for the command
+ // @param caller_proc_id The process id of the calling process
+ // @param proc_handle The process handle valid in the caller's context
+ HRESULT LaunchCmdElevated([in, string] const WCHAR* app_guid,
+ [in, string] const WCHAR* cmd_id,
+ [in] DWORD caller_proc_id,
+ [out] ULONG_PTR* proc_handle);
+};
+
[
uuid(7E6CD20B-8688-4960-96D9-B979471577B8),
version(1.0),
- helpstring("Google Update Browser Launcher 1.0 Type Library")
+ helpstring("Google Update Type Library")
]
library GoogleUpdateLib {
importlib("stdole2.tlb");
[
- uuid(D21E601A-3017-4d61-9315-F2880EBD196F),
- helpstring("BrowserLauncherClass Class")
+ uuid(ABC01078-F197-4b0b-ADBC-CFE684B39C82),
+ helpstring("ProcessLauncherClass Class")
]
- coclass BrowserLauncherClass {
- [default] interface IBrowserLauncher;
+ coclass ProcessLauncherClass {
+ [default] interface IProcessLauncher;
}
// This coclass declaration exists only for the purpose of forcing
@@ -181,4 +218,14 @@ library GoogleUpdateLib {
coclass OnDemandMachineAppsClass {
[default] interface IGoogleUpdate;
}
+
+ [
+ uuid(E225E692-4B47-4777-9BED-4FD7FE257F0E),
+ helpstring("GoogleUpdateCore Class")
+ ]
+ coclass GoogleUpdateCoreClass
+ {
+ [default] interface IGoogleUpdateCore;
+ }
+
};