1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CLOUD_PRINT_COMMON_INSTALL_UTILS_H_
6 #define CLOUD_PRINT_COMMON_INSTALL_UTILS_H_
11 #include "base/files/file_path.h"
12 #include "base/strings/string16.h"
14 namespace cloud_print
{
16 // Sets Google Update registry keys after install or update.
17 void SetGoogleUpdateKeys(const base::string16
& product_id
,
18 const base::string16
& product_name
);
20 // Sets custom error message to show by Google Update installer
21 void SetGoogleUpdateError(const base::string16
& product_id
,
22 const base::string16
& message
);
24 // Sets custom system error code to show by Google Update installer
25 void SetGoogleUpdateError(const base::string16
& product_id
, HRESULT hr
);
27 // Deletes Google Update reg keys on product uninstall.
28 void DeleteGoogleUpdateKeys(const base::string16
& product_id
);
30 // Creates control panel uninstall item.
31 void CreateUninstallKey(const base::string16
& uninstall_id
,
32 const base::string16
& product_name
,
33 const std::string
& uninstall_switch
);
35 // Deletes control panel uninstall item.
36 void DeleteUninstallKey(const base::string16
& uninstall_id
);
38 // Returns install location retrieved from control panel uninstall key.
39 base::FilePath
GetInstallLocation(const base::string16
& uninstall_id
);
41 // Returns install location retrieved from control panel uninstall key.
42 void DeleteProgramDir(const std::string
& delete_switch
);
44 // Returns true if path is part of program files.
45 bool IsProgramsFilesParent(const base::FilePath
& path
);
47 } // namespace cloud_print
49 #endif // CLOUD_PRINT_COMMON_INSTALL_UTILS_H_