diff options
author | kuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-04 20:15:39 +0000 |
---|---|---|
committer | kuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-04 20:15:39 +0000 |
commit | 883f30758cd0861f95c0ef26011c0c6ceb43040b (patch) | |
tree | d05d494482ffaeeeead296100adf66024ecb40a2 /chrome/installer/gcapi/gcapi.h | |
parent | 2f7fb641f6a3afb436df92744bdd3f22f3b479e7 (diff) | |
download | chromium_src-883f30758cd0861f95c0ef26011c0c6ceb43040b.zip chromium_src-883f30758cd0861f95c0ef26011c0c6ceb43040b.tar.gz chromium_src-883f30758cd0861f95c0ef26011c0c6ceb43040b.tar.bz2 |
* Add the checks that Chrome criteria checker will need to do. It mostly checks for existing installation, appropriate rights and for past offers for Google Chrome.
The code borrows heavily from similar code written for Toolbar and Desktop (linked to from the bug).
The test executable when run on a machine only makes sure that DLL and lib can be used to invoke the compatibility check function.
BUG=1380504
Review URL: http://codereview.chromium.org/12922
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6380 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/gcapi/gcapi.h')
-rwxr-xr-x | chrome/installer/gcapi/gcapi.h | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/chrome/installer/gcapi/gcapi.h b/chrome/installer/gcapi/gcapi.h index 24998c6..da56b23 100755 --- a/chrome/installer/gcapi/gcapi.h +++ b/chrome/installer/gcapi/gcapi.h @@ -9,19 +9,28 @@ extern "C" { // Error conditions for GoogleChromeCompatibilityCheck(). -#define GCCC_ERROR_ALREADYPRESENT 0x01 -#define GCCC_ERROR_ACCESSDENIED 0x02 -#define GCCC_ERROR_OSNOTSUPPORTED 0x04 +#define GCCC_ERROR_USERLEVELALREADYPRESENT 0x01 +#define GCCC_ERROR_SYSTEMLEVELALREADYPRESENT 0x02 +#define GCCC_ERROR_ACCESSDENIED 0x04 +#define GCCC_ERROR_OSNOTSUPPORTED 0x08 +#define GCCC_ERROR_ALREADYOFFERED 0x10 +#define GCCC_ERROR_INTEGRITYLEVEL 0x20 #define DLLEXPORT __declspec(dllexport) -// This function returns TRUE if the Google Chrome should be offered. -// If the answer is FALSE, the reasons DWORD explains why. If you don't care +// This function returns TRUE if Google Chrome should be offered. +// If the return is FALSE, the reasons DWORD explains why. If you don't care // for the reason, you can pass NULL for reasons. DLLEXPORT BOOL __stdcall GoogleChromeCompatibilityCheck(DWORD *reasons); -// Funtion pointer type declaration to use with GetProcAddress. -typedef BOOL (__stdcall * GCCC_FN)(HKEY, DWORD *); +// This function launches Google Chrome after a successful install. If +// proc_handle is not NULL, the process handle of the newly created process +// will be returned. +DLLEXPORT BOOL __stdcall LaunchGoogleChrome(HANDLE* proc_handle); + +// Funtion pointer type declarations to use with GetProcAddress. +typedef BOOL (__stdcall * GCCC_CompatibilityCheck)(DWORD *); +typedef BOOL (__stdcall * GCCC_LaunchGC)(HANDLE *); } // extern "C" #endif // # CHROME_INSTALLER_GCAPI_GCAPI_H_ |