Commit Graph

124 Commits

Author SHA1 Message Date
Michael Stefaniuc 6542c3e860 reg: Use the global HeapAlloc() wrappers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-08 09:42:12 +01:00
Hugh McMaster a0a12d9f41 reg: Allow switches to be uppercase or lowercase.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:04 +01:00
Hugh McMaster 8534935492 reg: Define MAX_SUBKEY_LEN in reg.h.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:04 +01:00
Hugh McMaster ecb9ce4b2c reg: Make the newline string a static global.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:04 +01:00
Hugh McMaster 72db61da97 reg: Recursively export all subkeys and data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:56:49 +01:00
Hugh McMaster 49f384727b reg: Prompt the user to overwrite the export file if it already exists.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:56:00 +01:00
Hugh McMaster e0aadc0fc7 reg: Print a more informative error message if the system key is invalid.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:55:01 +01:00
Hugh McMaster 40643a43a4 reg: Validate the system key before commencing the export operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:54:11 +01:00
Hugh McMaster 38954aedf5 reg: Add initial support for the export operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:54:03 +01:00
Alexandre Julliard a37358d0f5 reg: Use WINAPIV calling convention for variadic functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 10:21:30 +01:00
Hugh McMaster 3e87a70e82 reg: Introduce a partial state machine for importing Windows 3.1 registry data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-20 09:27:38 +09:00
Hugh McMaster aa386af42a reg: Add initial support for the import operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-20 09:25:52 +09:00
Hugh McMaster f2fbbec27d reg: Rename reg.h to resource.h.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-20 09:24:50 +09:00
Hugh McMaster c6c95a026b reg: Compile with msvcrt.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-20 09:24:50 +09:00
Hugh McMaster 8c253c464b reg: Make some variables 'static const'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 11:15:11 +09:00
Hugh McMaster 337e0f4cb2 reg: Avoid an uninitialized variable warning.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 11:15:04 +09:00
Hugh McMaster 8abec73530 reg: Dynamically allocate memory for the value name buffer when deleting all registry values in a specified key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:13:56 +09:00
Hugh McMaster e7ea8380e0 reg: Use a helper function to resize a memory buffer.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 18:18:47 +02:00
Hugh McMaster a1bc33ae5c reg: Use a helper function to free allocated memory.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 18:18:36 +02:00
Hugh McMaster a6e28cc3b4 reg: Use a helper function to allocate memory and die on failure.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 18:18:31 +02:00
Hugh McMaster 90da210cb0 reg: Account for sizeof(WCHAR) when resizing the value name buffer during the query operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-21 16:40:05 +02:00
Hugh McMaster fb22f6c416 reg: Avoid using RegQueryInfoKey() to enumerate subkeys and values in the query operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 16:27:05 +02:00
Hugh McMaster 68c1765a5d reg: Simplify help handling by removing an if-else if-else block.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 13:37:57 +09:00
Hugh McMaster 8a8a753cfa reg: Fix dword conversion on 64-bit operating systems.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 13:12:15 +09:00
Hugh McMaster 73f60910e4 reg: Handle a special case for Default values and 'reg query'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:05 +09:00
Hugh McMaster 2885170057 reg: Free szValue after deleting all registry values (Coverity).
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:22:05 +09:00
Hugh McMaster ecdd3c8e84 reg: Always output the long key name when printing strings.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 17:11:53 +09:00
Hugh McMaster 4a22ba5b46 reg: Parse the registry key using a helper function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 17:11:53 +09:00
Hugh McMaster 7d962327b1 reg: Avoid possible out-of-bounds memory access when a switch is only a forward slash or hyphen.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-09 18:26:43 +09:00
Hugh McMaster f426ece3a1 reg: Recognise switches beginning with a forward slash or hyphen.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:35:18 +09:00
Hugh McMaster 31efcc634a reg: Do not allow duplicate /d or /t switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:34:34 +09:00
Hugh McMaster 17d606a3b9 reg: Move duplicate /v, /ve and /va combination checks to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:45 +09:00
Hugh McMaster 0f7bdf7d57 reg: Remove an unreachable 'else' pathway from wmain.
Invalid operations are handled earlier in wmain.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster 7484c5eba3 reg: Combine duplicate 'for' loops in wmain and parse all remaining arguments.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster f1bf0bfbc3 reg: Move duplicate strchrW() calls to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster c0d9908558 reg: Rename HKEY 'subkey' to 'key' in reg_add() and reg_delete().
This better reflects the purpose of the HKEY.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster ee71883964 reg: Move duplicate path_get_rootkey() calls to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:39 +09:00
Hugh McMaster d57ad7b054 reg: Move duplicate sane_path() calls to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:37 +09:00
Hugh McMaster 2864105ef5 reg: Make help for registry operations common in wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:35 +09:00
Hugh McMaster 45acfd9b50 reg: Simplify help logic and syntax.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:33 +09:00
Hugh McMaster 33d657f55c reg: Exit with an error if the specified operation is invalid.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:31 +09:00
Hugh McMaster 6a927ef70c reg: Parse the registry operation using an enum.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:29 +09:00
Hugh McMaster 6ce8524271 reg: Recognise hyphen and forward slash help switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:27 +09:00
Hugh McMaster deaad0f90a reg: Inform users about the 'add/delete/query /?' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 22:32:04 +09:00
Hugh McMaster 2b77d24f0f reg: Update general help logic.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 22:28:49 +09:00
Hugh McMaster ccbbb92888 reg: Avoid using strlenW to check if a string is valid.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 22:17:58 +09:00
Hugh McMaster 7b9a1a355f reg: Output line break before displaying query output.
This matches Windows' behaviour.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:29 +09:00
Hugh McMaster 43875a7fae reg: Output the number of matches when querying the registry recursively.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:29 +09:00
Hugh McMaster dd5da0ae64 reg: Support recursion when querying a registry value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-27 12:42:41 +09:00
Hugh McMaster 0c0d839aaa reg: Add /v and /ve support to reg query.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 22:10:09 +09:00