Внутренняя ошибка 25200 2 regopenkeyex криптопро

Здравствуйте. Обратились знакомые за помощью. Пытаемся разобраться. Изначально сообщили, что крипто-про не видит их сертификат, которым подписывают без проблем на другом ПК. И что уже пытались...

Форум КриптоПро
 » 
Средства криптографической защиты информации
 » 
КриптоПро CSP 4.0
 » 
При установке и удалении Внутренняя ошибка 25200. 2. RegOpenKeyEx и не только


Offline

maksimkat1

 


#1
Оставлено
:

17 ноября 2021 г. 1:11:54(UTC)

maksimkat1

Статус: Участник

Группы: Участники

Зарегистрирован: 03.03.2016(UTC)
Сообщений: 11
Мужчина
Российская Федерация
Откуда: Moscow

Сказал «Спасибо»: 2 раз

Здравствуйте.

Обратились знакомые за помощью. Пытаемся разобраться.
Изначально сообщили, что крипто-про не видит их сертификат, которым подписывают без проблем на другом ПК.
И что уже пытались ковырять сами.
Вообщем решил начать с того, что попросил подключить флешку, на которой они считали что у них сертификат.
Открыв установленный Крипто 4.0.9944 — и просмотрев контейнеры — не обнаружили того сертификата, который был необходим. Зайдя на флешку увидел лишь открытый сертификат (.cer) но у него была странная ошибка:
На вкладке общие: При проверке отношений доверия произошла системная ошибка.
А на вкладке путь сертификации: Этот сертификат содержит недействительную цифровую подпись.

Решил скачать корневвой сертификат минкомсвязь России от фед.казначейства — но в этих вкладках те же ошибки.
Пришел к выводу, что чтото не то с ПК, а точнее с крипто провайдером.
Не зная, что ковыряли до меня, решил удалить КриптоПро. Процесс пошел, но с внезапными ошибками Внутренняя ошибка 25200. 2. RegOpenKeyEx. Пару раз потыкав ок, вроде бы удалилось. Запустил ещё и CSPClean. Перезагрузился.
Открыл снова сертфикаты — те же ошибки
(кстати уже вечером на своем ПК , на котором нет и никогда не было установлено никаких криптопровайдеров — там те же ошибки (сделал вывод, что на ПК не работал корректно КриптоПро)
Начал установку крипто про, на этот раз версии КриптоПро CSP 4.0.9963 R4 (Abel) от 23.11.2018
Кстати ПК на Windows 10 x64 Домашняя 21H2.

И тут снова столкнулся с этой ошибкой, что была при удалении Внутренняя ошибка 25200. 2. RegOpenKeyEx — https://yadi.sk/i/2SSapNPj4JrfuQ пару раз нажав ОК, получил окно: «Возникла ошибка в процессе установки драйвера. Подробности в журнале событий системы» — https://disk.yandex.ru/i/4Y0E7EljgXFliQ

Полез в события Windows, но получил ошибку о том, что соответствующая служба не запущена… Полез в службы — увидел что отключена совсем. Запустил. Журнал событий ожил. Проделал снова установку, получил ошибку — полез в журнал. На этот раз ошибки увидел и сфотографировал их.
Так же сохранил журнал — https://yadi.sk/d/IpA3hg2prUF_PQ

Из них наиболее информативные как по мне это
Продукт: КриптоПро CSP — Ошибка 25002. Возникла ошибка в процессе установки драйвера. Подробности в журнале событий системы. — https://yadi.sk/i/Kp07LgCMQRHD7A
и
Не удалось подключиться к серверу. Ошибка: 0x800401F0 — https://yadi.sk/i/S9GiK11KI3oprg

Ссылка на папку со всеми фото и файлом журнала: https://disk.yandex.ru/d/6-aHK5iKhfK8QA

На фото, вы можете заметить версию крипто-про 5.0.
Это я решил проверить, измениться ли что-то при попытке установки этой версии — но всё то же самое.
Кстати еще создавал нового пользователя Windows (с правами администратора) — там всё то же самое.

Многобукв, но старался по-максимуму всё рассказать. Надеюсь на вашу помощь, подсказки, почему не удается установить корректно Крипто-про. Думаю ошибки с сертификатами связано с этим.

Отредактировано пользователем 17 ноября 2021 г. 11:32:03(UTC)
 | Причина: Не указана


Вверх


Offline

nickm

 


#2
Оставлено
:

17 ноября 2021 г. 6:23:10(UTC)

nickm

Статус: Активный участник

Группы: Участники

Зарегистрирован: 31.05.2016(UTC)
Сообщений: 797

Сказал(а) «Спасибо»: 237 раз
Поблагодарили: 129 раз в 119 постах


Вверх


Offline

Максим Коллегин

 


#3
Оставлено
:

19 ноября 2021 г. 14:41:14(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,255
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 660 раз в 583 постах

У клиента была уничтожена ветка [HKEY_LOCAL_MACHINESOFTWAREMicrosoftCryptographyOIDEncodingType 1], содержащая важнейший компонент CertDllVerifyRevocation – системный revocation provider.
Научим наш CSP при установке чинить CPCSP-12554 реестр


Вверх

thanks 3 пользователей поблагодарили Максим Коллегин за этот пост.


Offline

maksimkat1

 


#4
Оставлено
:

19 ноября 2021 г. 14:56:02(UTC)

maksimkat1

Статус: Участник

Группы: Участники

Зарегистрирован: 03.03.2016(UTC)
Сообщений: 11
Мужчина
Российская Федерация
Откуда: Moscow

Сказал «Спасибо»: 2 раз

Проблема решена.
Спасибо Максиму


Вверх


Offline

Di_OX

 


#5
Оставлено
:

24 ноября 2021 г. 15:45:40(UTC)

Di_OX

Статус: Новичок

Группы: Участники

Зарегистрирован: 23.12.2010(UTC)
Сообщений: 2

Сказал(а) «Спасибо»: 1 раз

Добрый день!
Возникла такая же проблема — ошибка «Внутренняя ошибка 25200. 2. RegOpenKeyEx» и отсутствует ветка CertDllVerifyRevocation. Подскажите пожалуйста как вылечить


Вверх


Offline

Максим Коллегин

 


#6
Оставлено
:

24 ноября 2021 г. 17:18:15(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,255
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 660 раз в 583 постах

reprov.reg (1kb) загружен 11 раз(а).Вложил reg-файл, попробуйте импортировать.

Код:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftCryptographyOIDEncodingType 1CertDllVerifyRevocationDEFAULT]
"Dll"=hex(7):63,00,72,00,79,00,70,00,74,00,6e,00,65,00,74,00,2e,00,64,00,6c,00,
  6c,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeMicrosoftCryptographyOIDEncodingType 1CertDllVerifyRevocationDEFAULT]
"Dll"=hex(7):63,00,72,00,79,00,70,00,74,00,6e,00,65,00,74,00,2e,00,64,00,6c,00,
  6c,00,00,00,00,00

Отредактировано пользователем 24 ноября 2021 г. 17:20:17(UTC)
 | Причина: Не указана


Вверх

thanks 1 пользователь поблагодарил Максим Коллегин за этот пост.

Di_OX

оставлено 25.11.2021(UTC)


Offline

Di_OX

 


#7
Оставлено
:

25 ноября 2021 г. 15:24:48(UTC)

Di_OX

Статус: Новичок

Группы: Участники

Зарегистрирован: 23.12.2010(UTC)
Сообщений: 2

Сказал(а) «Спасибо»: 1 раз

спасибо, эта проблема ушла. Но Крипто Про всё равно не устанавливается, теперь «ошибка в процессе установки драйвера». Все сторонние криптопровайдеры (а они были) удалены, cspclean прогонял, не помогает


Вверх


Offline

nickm

 


#8
Оставлено
:

25 ноября 2021 г. 15:28:52(UTC)

nickm

Статус: Активный участник

Группы: Участники

Зарегистрирован: 31.05.2016(UTC)
Сообщений: 797

Сказал(а) «Спасибо»: 237 раз
Поблагодарили: 129 раз в 119 постах

Автор: Di_OX Перейти к цитате

теперь «ошибка в процессе установки драйвера».

А система какая?
W7/ W10/ W11?


Вверх


Offline

Максим Коллегин

 


#9
Оставлено
:

25 ноября 2021 г. 15:49:50(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,255
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 660 раз в 583 постах

Тогда нужно еще выполнить

с правами администратора.
Интересно, что за «умник» удаляет настройки криптографии в системе?

Отредактировано пользователем 25 ноября 2021 г. 15:50:37(UTC)
 | Причина: Не указана


Вверх

thanks 1 пользователь поблагодарил Максим Коллегин за этот пост.

nickm

оставлено 25.11.2021(UTC)

Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Средства криптографической защиты информации
 » 
КриптоПро CSP 4.0
 » 
При установке и удалении Внутренняя ошибка 25200. 2. RegOpenKeyEx и не только

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Yodas

1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

1

26.07.2015, 20:45. Показов 10870. Ответов 15

Метки нет (Все метки)


RegOpenKeyEx возвращает 2 хотя ключ в реестре точно существует и в regedit я его вижу перепробывал уже тучу параметров подскажите что не так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#define _CRT_SECURITI_NO_WARNING
 
#include <iostream>
#include <Windows.h>
 
using std::cout;
using std::endl;
 
int main()
 
{
    while (true)
    {
 
        Sleep(1000);
        setlocale(LC_ALL, "rus");
        HKEY hKey;
        char szPath[0x100];
        char Name[] = "Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\AVG_UI";
 
 
        long n = RegOpenKeyEx(HKEY_LOCAL_MACHINE, Name, NULL, KEY_ALL_ACCESS | KEY_WOW64_64KEY, &hKey);
        
        
        if (n == ERROR_SUCCESS)
        {
 
            cout << "Ключ уже существуетn" << n<<endl;
        }
        else
        {
            cout << "Ключ по данному пути не уществуетn" <<n<< endl;
        }
        RegCloseKey(hKey);
    }
}

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Модератор

3352 / 2127 / 349

Регистрация: 13.01.2012

Сообщений: 8,290

26.07.2015, 20:47

2

мб нужны права админа?



0



hoggy

Эксперт С++

8719 / 4299 / 958

Регистрация: 15.11.2014

Сообщений: 9,744

26.07.2015, 20:50

3

Цитата
Сообщение от Yodas
Посмотреть сообщение

RegOpenKeyEx возвращает 2 хотя ключ в реестре точно существует и в regedit я его вижу перепробывал уже тучу параметров подскажите что не так

обратите внимание на параметр:

C++
1
KEY_WOW64_64KEY

реестр на самом деле существует в двух экземплярах:
32 битный, и 64 битный.

возможно, ключ который вам нужен существует только в 32битной версии.



0



1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

26.07.2015, 21:00

 [ТС]

4

Насколько фпонимаю если она лежит в ветке с папкой Wow6432Node то ключ в 64м битном экземпляре Software\Wow6432Node\Microsoft\Windows\Current Version\Run\AVG_UI

Миниатюры

RegOpenKeyEx возвращает 2 хотя ключ в реестре точно существует
 



0



1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

26.07.2015, 21:25

 [ТС]

5

Цитата
Сообщение от vxg
Посмотреть сообщение

мб нужны права админа?

Запустил от имени администратора не помогло



0



Ушел с форума

Эксперт С++

16454 / 7418 / 1186

Регистрация: 02.05.2013

Сообщений: 11,617

Записей в блоге: 1

26.07.2015, 21:43

6

Уберите «Wow6432Node» в пути ключа реестра.

Как написал hoggy выше, доступ в 64-битную ветку получается с
помощью флага KEY_WOW64_64KEY, а в 32-битную — с помощью KEY_WOW64_32KEY.

Задавать в явном виде «Wow6432Node» не нужно.



0



1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

26.07.2015, 21:48

 [ТС]

7

Цитата
Сообщение от Убежденный
Посмотреть сообщение

Уберите «Wow6432Node» в пути ключа реестра.

Как написал hoggy выше, доступ в 64-битную ветку получается с
помощью флага KEY_WOW64_64KEY, а в 32-битную — с помощью KEY_WOW64_32KEY.

Задавать в явном виде «Wow6432Node» не нужно.

Wow6432Node убрал, пробовал KEY_WOW64_64KEY и KEY_WOW64_32KEY все равно возвращает 2(Система не может найти указанный файл.)



0



Убежденный

Ушел с форума

Эксперт С++

16454 / 7418 / 1186

Регистрация: 02.05.2013

Сообщений: 11,617

Записей в блоге: 1

26.07.2015, 21:58

8

Покажите исправленный код.

И еще.

C++
1
char Name[] = "Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\AVG_UI";

AVG_UI — это неправильно, ведь это название значения, а не ключа.
Должно быть так:

C++
1
char Name[] = "Software\Microsoft\Windows\CurrentVersion\Run";

И далее RegQueryValueEx и вот уже туда передавайте AVG_UI.



0



Yodas

1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

26.07.2015, 22:16

 [ТС]

9

Цитата
Сообщение от Убежденный
Посмотреть сообщение

Покажите исправленный код.

Добавлено через 1 минуту
И еще.

AVG_UI — это неправильно, ведь это название значения, а не ключа.
Должно быть так:

C++
1
char Name[] = "Software\Microsoft\Windows\CurrentVersion\Run";

И далее RegQueryValueEx и вот уже туда передавайте AVG_UI.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#define _CRT_SECURITI_NO_WARNING
 
#include <iostream>
#include <Windows.h>
 
using std::cout;
using std::endl;
 
int main()
 
{
    while (true)
    {
 
        Sleep(1000);
        setlocale(LC_ALL, "rus");
        HKEY hKey;
        char szPath[0x100];
        char Name[] = "Software//Microsoft//Windows//CurrentVersion//Run//AVG_UI";
 
 
        long n = RegOpenKeyEx(HKEY_LOCAL_MACHINE, Name, NULL, KEY_WRITE | KEY_WOW64_32KEY, &hKey);
        
        
        if (n == ERROR_SUCCESS)
        {
 
            cout << "Ключ уже существуетn" << n<<endl;
        }
        else
        {
            cout << "Ключ по данному пути не уществуетn" <<n<< endl;
        }
        RegCloseKey(hKey);
    }
}

Не дочитал счас попробую (И далее RegQueryValueEx и вот уже туда передавайте AVG_UI.)

Добавлено через 18 минут
Да все равно выдает ошибку «2» собака только уже на RegQueryValueEx ругается

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#define _CRT_SECURITI_NO_WARNING
 
#include <iostream>
#include <Windows.h>
 
using std::cout;
using std::endl;
 
int main()
 
{
    while (true)
    {
 
        Sleep(1000);
        DWORD Q = 0;
        DWORD T = 0;
        setlocale(LC_ALL, "rus");
        HKEY hKey;
        char szPath[0x100];
        char Name[] = "Software\Microsoft\Windows\CurrentVersion\Run";
 
 
        long n = RegOpenKeyEx(HKEY_LOCAL_MACHINE, Name, NULL, KEY_WRITE | KEY_WOW64_64KEY, &hKey);
        long b = RegQueryValueEx(HKEY_LOCAL_MACHINE,TEXT("AVG_UI"), NULL, &Q,NULL,&T);
        
        if (b == ERROR_SUCCESS)
        {
 
            cout << "Ключ уже существуетn" << b<<endl;
        }
        else
        {
            cout << "Ключ по данному пути не cуществуетn" <<b <<endl;
        }
        RegCloseKey(hKey);
    }
}



0



Ушел с форума

Эксперт С++

16454 / 7418 / 1186

Регистрация: 02.05.2013

Сообщений: 11,617

Записей в блоге: 1

26.07.2015, 22:49

10

У Вас на скриншоте выше четко видно, что открыт ключ HKLMSoftwareWow6432Node…Run,
то есть, 32-битная ветка. А в коде используется флаг KEY_WOW64_64KEY, т.е. ключ открывается
64-битный.



0



Butt-Head

Заблокирован

27.07.2015, 10:54

11

Добавлю от себя.
Многих сбивает с толку аббревиатура WOW64 и этим многим кажется, что именно тут лежат файлы для 64-х битных приложений. На самом деле всё с точностью, да наоборот:
WOW64 = Windows-on-Windows 64
Фактический это означает работу «обычного» виндуса на 64-х разрядном, то есть там лежат файлы, необходимые для работы «обычного 32-х разрядного» виндуса на 64-х битном.



2



Yodas

1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

27.07.2015, 12:02

 [ТС]

12

Пробовал различные комбинаций менял 32 и 64 запускал с правами Админа все равно ошибка два вылазит

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#define _CRT_SECURITI_NO_WARNING
 
#include <iostream>
#include <Windows.h>
 
using std::cout;
using std::endl;
 
int main()
 
{
    while (true)
    {
 
        Sleep(1000);
        DWORD Q ;
        DWORD T ;
        setlocale(LC_ALL, "rus");
        HKEY hKey;
        TCHAR szPath[0x100];
        TCHAR  Name[] = "Software\Microsoft\Windows\CurrentVersion\Run";
 
 
        long n = RegOpenKeyEx(HKEY_LOCAL_MACHINE, Name, NULL, KEY_WRITE | KEY_WOW64_32KEY, &hKey);
        long b = RegQueryValueEx(HKEY_LOCAL_MACHINE,TEXT("\AVG_UI"), NULL, &Q,NULL,&T);
        
        if (b == ERROR_SUCCESS)
        {
 
            cout << "Ключ уже существуетn" << b<<endl;
        }
        else
        {
            cout << "Ключ по данному пути не существуетn" <<b<<"n" <<n<<endl;
        }
        RegCloseKey(hKey);
    }
}

Может это связана с тем что у меня 8.1 х64 там как то по другому реестр строиться



0



Ушел с форума

Эксперт С++

16454 / 7418 / 1186

Регистрация: 02.05.2013

Сообщений: 11,617

Записей в блоге: 1

27.07.2015, 12:13

13

В RegQueryValueEx первым параметром следует передавать hKey, открытый
на предыдущем шаге, а не HKEY_LOCAL_MACHINE.



0



1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

27.07.2015, 12:38

 [ТС]

14

Цитата
Сообщение от Убежденный
Посмотреть сообщение

В RegQueryValueEx первым параметром следует передавать hKey, открытый
на предыдущем шаге, а не HKEY_LOCAL_MACHINE.

О_о пошло движение теперь выдает ошибку 5 в доступе отказано это я так понимаю надо KEY_Write менять?



0



Ушел с форума

Эксперт С++

16454 / 7418 / 1186

Регистрация: 02.05.2013

Сообщений: 11,617

Записей в блоге: 1

27.07.2015, 12:44

15

Лучший ответ Сообщение было отмечено Yodas как решение

Решение

См. в MSDN на странице описания соответствующих функций работы с
реестром (RegSetValueEx, RegQueryValueEx и т.п.), какие там где права требуются.



1



1 / 1 / 0

Регистрация: 01.05.2015

Сообщений: 26

27.07.2015, 15:10

 [ТС]

16

Если кому интересно правильный ключ доступа был KEY_QUERY_VALUE.
Всем спасибо вопрос закрыт!!!



0




Повреждение, отсутствие или удаление файлов regopenkey.exe может привести к возникновению ошибок исполняемого файла EXE, которые чаще всего наблюдаются на этапе запуска RegOpenKey v1.5. Как правило, любую проблему, связанную с файлом EXE, можно решить посредством замены файла на новую копию. Помимо прочего, в качестве общей меры по профилактике и очистке мы рекомендуем использовать очиститель реестра для очистки любых недопустимых записей файлов, расширений файлов EXE или разделов реестра, что позволит предотвратить появление связанных с ними сообщений об ошибках.

Типы Исполнимые файлы, которые используют EXE, также известны в качестве формата Windows Executable File. Вы можете скачать новую копию файла regopenkey.exe для %%os%% (и ряда операционных систем Windows) в таблице ниже. В настоящее время в нашем каталоге для загрузки могут отсутствовать некоторые файлы (такие как regopenkey.exe), но их можно запросить, нажав на кнопку Request (Запрос) ниже. В редких случаях, если вы не можете найти версию необходимого вам файла ниже, мы рекомендуем вам обратиться за дополнительной помощью к BlueLife.

Настоятельно рекомендуется выполнить проверку и убедиться в том, что файл был размещён в правильном каталоге. Тщательно следуйте настоящим инструкциям, чтобы устранить возникающую ошибку, связанную с файлом regopenkey.exe, однако мы рекомендуем выполнить быструю проверку. Мы рекомендуем повторно запустить RegOpenKey v1.5 для проверки того, возникает ли проблема.

regopenkey.exe Описание файла
Тип: EXE
Категория:
Application: RegOpenKey v1.5
Версия программного обеспечения: 1.5.0.0
Программист: BlueLife
 
Имя: regopenkey.exe  

Байт: 284483
SHA-1: dc17d696749d875fdd67ac308bdfda8af8712bb9
MD5: 0415216d5aa9d70e0834c4d47ac78350
CRC32:

Продукт Solvusoft

Загрузка
WinThruster 2023 — Сканировать ваш компьютер на наличие ошибок реестра в regopenkey.exe

Windows
11/10/8/7/Vista/XP

Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление

EXE
regopenkey.exe

Идентификатор статьи:   951411

Regopenkey.exe

Имя файла ID Размер (в байтах) Загрузить
+ regopenkey.exe 0415216d5aa9d70e0834c4d47ac78350 277.82 KB
Софт RegOpenKey v1.5 1.5.0.0
Программист BlueLife
OS Windows 7
Тип 64-разрядная (x64)
Размер (в байтах) 284483
Контрольная сумма MD5 0415216d5aa9d70e0834c4d47ac78350
Контрольная сумма SHA1 dc17d696749d875fdd67ac308bdfda8af8712bb9
Контрольная сумма SHA256: 1bb9e95e9f85efbe62957adb4ec98c2e3029ddc47062d1ac09dfc90590241a13
CRC32:
Расположение файла %PROGRAMFILES%Registry Open to Key v1.5

Ошибки Regopenkey.exe

Частичный список ошибок regopenkey.exe RegOpenKey v1.5:

  • «Ошибка в приложении: regopenkey.exe»
  • «Regopenkey.exe не является приложением Win32.»
  • «Извините, regopenkey.exe столкнулся с проблемой. «
  • «Regopenkey.exe не может быть найден. «
  • «Regopenkey.exe не может быть найден. «
  • «Ошибка запуска программы: regopenkey.exe.»
  • «Regopenkey.exe не работает. «
  • «Ошибка Regopenkey.exe. «
  • «Ошибка пути программного обеспечения: regopenkey.exe. «

Эти сообщения об ошибках EXE могут появляться во время установки программы, в то время как программа, связанная с regopenkey.exe (например, RegOpenKey v1.5) работает, во время запуска или завершения работы Windows, или даже во время установки операционной системы Windows. Запись ошибок regopenkey.exe внутри RegOpenKey v1.5 имеет решающее значение для обнаружения неисправностей электронной и ретрансляции обратно в BlueLife для параметров ремонта.

Источники проблем Regopenkey.exe

Эти проблемы regopenkey.exe создаются отсутствующими или поврежденными файлами regopenkey.exe, недопустимыми записями реестра RegOpenKey v1.5 или вредоносным программным обеспечением.

Точнее, ошибки regopenkey.exe, созданные из:

  • Недопустимая (поврежденная) запись реестра regopenkey.exe.
  • Файл Regopenkey.exe поврежден от вирусной инфекции.
  • Другая программа (не связанная с RegOpenKey v1.5) удалила regopenkey.exe злонамеренно или по ошибке.
  • Regopenkey.exe конфликтует с другой программой (общим файлом).
  • RegOpenKey v1.5 (regopenkey.exe) поврежден во время загрузки или установки.

I was making the following call:

result = RegOpenKeyEx(key, s, 0, KEY_READ, &key);

(C++, Visual Studio 5, Vista 64bit).

It is failing with error code 2 («File not found») even though «regedit» shows that the key exists. This code has always worked on 32bit XP. Why is it «file not found» when it clearly is there?

Kevin Panko's user avatar

Kevin Panko

8,26919 gold badges51 silver badges61 bronze badges

asked Oct 31, 2008 at 0:58

Tim Cooper's user avatar

I discovered that I could solve my problem using the flag: KEY_WOW64_64KEY , as in:

result = RegOpenKeyEx(key, s, 0, KEY_READ|KEY_WOW64_64KEY, &key);

For a full explanation: 32-bit and 64-bit Application Data in the Registry

Kevin Panko's user avatar

Kevin Panko

8,26919 gold badges51 silver badges61 bronze badges

answered Oct 31, 2008 at 0:58

Tim Cooper's user avatar

Tim CooperTim Cooper

9,8155 gold badges59 silver badges76 bronze badges

On a Windows 64-bit system the Registry is actually divided into two parts. One section is used by 64-bit processes, and one part by 32-bit processes.

For example, if a 32-bit application programatically writes to what it believes is HKLMSOFTWARECompanyApplication, it’s actually redirected by the WoW64-layer to HKLMSOFTWAREWow6432NodeCompanyApplication.

So when you run your 32-bit application and call RegOpenKeyEx it’s actually working against the Wow6432Node folder, and not the regular SOFTWARE node.

answered Nov 14, 2008 at 19:15

Frode Lillerud's user avatar

Frode LillerudFrode Lillerud

7,30417 gold badges58 silver badges69 bronze badges

1

You have to compile with «Use Multi-Byte Character Set» or cast string in code to (LPWSTR)

answered Jun 4, 2017 at 14:22

GMG's user avatar

GMGGMG

1,39812 silver badges20 bronze badges

I had a similar problem.
I was using:

dwResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                                   (LPWSTR)"SOFTWARE\0test",
                                   0,
                                   WRITE_DAC ,
                                   &hKey);

That didn’t work. I tried it like this and it worked:

dwResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                                   _T("SOFTWARE\0test"),
                                   0,
                                   WRITE_DAC ,
                                   &hKey);

Bill the Lizard's user avatar

answered Jun 23, 2010 at 18:52

Alex's user avatar

AlexAlex

694 bronze badges

1

I was making the following call:

result = RegOpenKeyEx(key, s, 0, KEY_READ, &key);

(C++, Visual Studio 5, Vista 64bit).

It is failing with error code 2 («File not found») even though «regedit» shows that the key exists. This code has always worked on 32bit XP. Why is it «file not found» when it clearly is there?

Kevin Panko's user avatar

Kevin Panko

8,26919 gold badges51 silver badges61 bronze badges

asked Oct 31, 2008 at 0:58

Tim Cooper's user avatar

I discovered that I could solve my problem using the flag: KEY_WOW64_64KEY , as in:

result = RegOpenKeyEx(key, s, 0, KEY_READ|KEY_WOW64_64KEY, &key);

For a full explanation: 32-bit and 64-bit Application Data in the Registry

Kevin Panko's user avatar

Kevin Panko

8,26919 gold badges51 silver badges61 bronze badges

answered Oct 31, 2008 at 0:58

Tim Cooper's user avatar

Tim CooperTim Cooper

9,8155 gold badges59 silver badges76 bronze badges

On a Windows 64-bit system the Registry is actually divided into two parts. One section is used by 64-bit processes, and one part by 32-bit processes.

For example, if a 32-bit application programatically writes to what it believes is HKLMSOFTWARECompanyApplication, it’s actually redirected by the WoW64-layer to HKLMSOFTWAREWow6432NodeCompanyApplication.

So when you run your 32-bit application and call RegOpenKeyEx it’s actually working against the Wow6432Node folder, and not the regular SOFTWARE node.

answered Nov 14, 2008 at 19:15

Frode Lillerud's user avatar

Frode LillerudFrode Lillerud

7,30417 gold badges58 silver badges69 bronze badges

1

You have to compile with «Use Multi-Byte Character Set» or cast string in code to (LPWSTR)

answered Jun 4, 2017 at 14:22

GMG's user avatar

GMGGMG

1,39812 silver badges20 bronze badges

I had a similar problem.
I was using:

dwResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                                   (LPWSTR)"SOFTWARE\0test",
                                   0,
                                   WRITE_DAC ,
                                   &hKey);

That didn’t work. I tried it like this and it worked:

dwResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                                   _T("SOFTWARE\0test"),
                                   0,
                                   WRITE_DAC ,
                                   &hKey);

Bill the Lizard's user avatar

answered Jun 23, 2010 at 18:52

Alex's user avatar

AlexAlex

694 bronze badges

1

I was making the following call:

result = RegOpenKeyEx(key, s, 0, KEY_READ, &key);

(C++, Visual Studio 5, Vista 64bit).

It is failing with error code 2 («File not found») even though «regedit» shows that the key exists. This code has always worked on 32bit XP. Why is it «file not found» when it clearly is there?

Kevin Panko's user avatar

Kevin Panko

8,26919 gold badges51 silver badges61 bronze badges

asked Oct 31, 2008 at 0:58

Tim Cooper's user avatar

I discovered that I could solve my problem using the flag: KEY_WOW64_64KEY , as in:

result = RegOpenKeyEx(key, s, 0, KEY_READ|KEY_WOW64_64KEY, &key);

For a full explanation: 32-bit and 64-bit Application Data in the Registry

Kevin Panko's user avatar

Kevin Panko

8,26919 gold badges51 silver badges61 bronze badges

answered Oct 31, 2008 at 0:58

Tim Cooper's user avatar

Tim CooperTim Cooper

9,8155 gold badges59 silver badges76 bronze badges

On a Windows 64-bit system the Registry is actually divided into two parts. One section is used by 64-bit processes, and one part by 32-bit processes.

For example, if a 32-bit application programatically writes to what it believes is HKLMSOFTWARECompanyApplication, it’s actually redirected by the WoW64-layer to HKLMSOFTWAREWow6432NodeCompanyApplication.

So when you run your 32-bit application and call RegOpenKeyEx it’s actually working against the Wow6432Node folder, and not the regular SOFTWARE node.

answered Nov 14, 2008 at 19:15

Frode Lillerud's user avatar

Frode LillerudFrode Lillerud

7,30417 gold badges58 silver badges69 bronze badges

1

You have to compile with «Use Multi-Byte Character Set» or cast string in code to (LPWSTR)

answered Jun 4, 2017 at 14:22

GMG's user avatar

GMGGMG

1,39812 silver badges20 bronze badges

I had a similar problem.
I was using:

dwResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                                   (LPWSTR)"SOFTWARE\0test",
                                   0,
                                   WRITE_DAC ,
                                   &hKey);

That didn’t work. I tried it like this and it worked:

dwResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                                   _T("SOFTWARE\0test"),
                                   0,
                                   WRITE_DAC ,
                                   &hKey);

Bill the Lizard's user avatar

answered Jun 23, 2010 at 18:52

Alex's user avatar

AlexAlex

694 bronze badges

1

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Внутренняя ошибка 2503 при установке libreoffice
  • Внутренняя ошибка 2502
  • Внутренняя ошибка 2203 c windows installer
  • Внутренняя ошибка 165 ккт атол
  • Внутренняя ошибка 15 на почте маил на телефоне как исправить

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии