mirror of
https://github.com/reactos/reactos.git
synced 2024-10-05 00:43:21 +00:00
Regedit: Fixed exporting subtrees with Unicode
Core exporting code still ANSI; need to fix this svn path=/trunk/; revision=18256
This commit is contained in:
parent
e908a4d408
commit
2639ea0346
|
@ -365,10 +365,17 @@ static BOOL ExportRegistryFile(HWND hWnd)
|
|||
ofn.lpTemplateName = MAKEINTRESOURCE(IDD_EXPORTRANGE);
|
||||
if (GetSaveFileName(&ofn)) {
|
||||
BOOL result;
|
||||
/* FIXME - convert strings to ascii! */
|
||||
result = export_registry_key((CHAR*)ofn.lpstrFile, (CHAR*)ExportKeyPath);
|
||||
/*result = export_registry_key(ofn.lpstrFile, NULL);*/
|
||||
/*if (!export_registry_key(ofn.lpstrFile, NULL)) {*/
|
||||
LPCSTR pszExportKeyPath;
|
||||
#ifdef UNICODE
|
||||
CHAR buffer[_MAX_PATH];
|
||||
|
||||
WideCharToMultiByte(CP_ACP, 0, ExportKeyPath, -1, buffer, sizeof(buffer), NULL, NULL);
|
||||
pszExportKeyPath = buffer;
|
||||
#else
|
||||
pszExportKeyPath = ExportKeyPath;
|
||||
#endif
|
||||
|
||||
result = export_registry_key(ofn.lpstrFile, pszExportKeyPath);
|
||||
if (!result) {
|
||||
/*printf("Can't open file \"%s\"\n", ofn.lpstrFile);*/
|
||||
return FALSE;
|
||||
|
|
|
@ -1285,9 +1285,9 @@ static void export_hkey(FILE *file, HKEY key,
|
|||
/******************************************************************************
|
||||
* Open file for export.
|
||||
*/
|
||||
static FILE *REGPROC_open_export_file(CHAR *file_name)
|
||||
static FILE *REGPROC_open_export_file(const TCHAR *file_name)
|
||||
{
|
||||
FILE *file = fopen(file_name, "w");
|
||||
FILE *file = _tfopen(file_name, _T("w"));
|
||||
if (!file) {
|
||||
perror("");
|
||||
fprintf(stderr,"%s: Can't open file \"%s\"\n", getAppName(), file_name);
|
||||
|
@ -1305,7 +1305,7 @@ static FILE *REGPROC_open_export_file(CHAR *file_name)
|
|||
* reg_key_name - registry branch to export. The whole registry is exported if
|
||||
* reg_key_name is NULL or contains an empty string.
|
||||
*/
|
||||
BOOL export_registry_key(CHAR *file_name, CHAR *reg_key_name)
|
||||
BOOL export_registry_key(const TCHAR *file_name, CHAR *reg_key_name)
|
||||
{
|
||||
HKEY reg_key_class;
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ void doQueryValue(LPSTR lpsLine);
|
|||
void doRegisterDLL(LPSTR lpsLine);
|
||||
void doUnregisterDLL(LPSTR lpsLine);
|
||||
|
||||
BOOL export_registry_key(CHAR *file_name, CHAR *reg_key_name);
|
||||
BOOL export_registry_key(const TCHAR *file_name, CHAR *reg_key_name);
|
||||
BOOL import_registry_file(LPTSTR filename);
|
||||
void delete_registry_key(CHAR *reg_key_name);
|
||||
|
||||
|
|
Loading…
Reference in a new issue