Index: chrome/installer/util/work_item.h |
diff --git a/chrome/installer/util/work_item.h b/chrome/installer/util/work_item.h |
index 30118609f6a48c68ecc822386939133c0e27a49c..148eeafe59e7ab849b0d178060fac89440f038fa 100644 |
--- a/chrome/installer/util/work_item.h |
+++ b/chrome/installer/util/work_item.h |
@@ -53,6 +53,12 @@ class WorkItem { |
CHECK_DUPLICATES // Only move if the move target is different. |
}; |
+ enum RegWow64ViewOption { |
+ WOW64_DEFAULT, // Use default view for specified key. |
+ WOW64_64KEY, // Always attempt to access the 64-bit registry view. |
+ WOW64_32KEY // Always attempt to access the 32-bit registry view. |
+ }; |
+ |
// Abstract base class for the conditions used by ConditionWorkItemList. |
// TODO(robertshield): Move this out of WorkItem. |
class Condition { |
@@ -72,7 +78,8 @@ class WorkItem { |
HKEY predefined_root, |
const std::wstring& source_key_path, |
const std::wstring& dest_key_path, |
- CopyOverWriteOption overwrite_option); |
+ CopyOverWriteOption overwrite_option, |
+ RegWow64ViewOption reg_wow64_option); |
// Create a CopyTreeWorkItem that recursively copies a file system hierarchy |
// from source path to destination path. |
@@ -93,18 +100,22 @@ class WorkItem { |
// Create a CreateRegKeyWorkItem that creates a registry key at the given |
// path. |
static CreateRegKeyWorkItem* CreateCreateRegKeyWorkItem( |
- HKEY predefined_root, const std::wstring& path); |
+ HKEY predefined_root, const std::wstring& path, |
+ RegWow64ViewOption reg_wow64_option); |
// Create a DeleteRegKeyWorkItem that deletes a registry key at the given |
// path. |
static DeleteRegKeyWorkItem* CreateDeleteRegKeyWorkItem( |
- HKEY predefined_root, const std::wstring& path); |
+ HKEY predefined_root, |
+ const std::wstring& path, |
+ RegWow64ViewOption reg_wow64_option); |
// Create a DeleteRegValueWorkItem that deletes a registry value |
static DeleteRegValueWorkItem* CreateDeleteRegValueWorkItem( |
HKEY predefined_root, |
const std::wstring& key_path, |
- const std::wstring& value_name); |
+ const std::wstring& value_name, |
+ RegWow64ViewOption reg_wow64_option); |
// Create a DeleteTreeWorkItem that recursively deletes a file system |
// hierarchy at the given root path. A key file can be optionally specified |
@@ -129,7 +140,8 @@ class WorkItem { |
const std::wstring& key_path, |
const std::wstring& value_name, |
const std::wstring& value_data, |
- bool overwrite); |
+ bool overwrite, |
+ RegWow64ViewOption reg_wow64_option); |
// Create a SetRegValueWorkItem that sets a registry value with REG_DWORD type |
// at the key with specified path. |
@@ -137,7 +149,8 @@ class WorkItem { |
HKEY predefined_root, |
const std::wstring& key_path, |
const std::wstring& value_name, |
- DWORD value_data, bool overwrite); |
+ DWORD value_data, bool overwrite, |
+ RegWow64ViewOption reg_wow64_option); |
// Create a SetRegValueWorkItem that sets a registry value with REG_QWORD type |
// at the key with specified path. |
@@ -145,7 +158,8 @@ class WorkItem { |
HKEY predefined_root, |
const std::wstring& key_path, |
const std::wstring& value_name, |
- int64 value_data, bool overwrite); |
+ int64 value_data, bool overwrite, |
+ RegWow64ViewOption reg_wow64_option); |
// Add a SelfRegWorkItem that registers or unregisters a DLL at the |
// specified path. |