So erhalten Sie eine 64-Bit-Windows-Desktop-App zum Lesen des wow6432node

470
user204427

Ich habe eine Windows-Desktopanwendung installiert. Das Installationsprogramm ist Inno Setup und der Lizenzschlüssel für die App befindet sich unter wow6432node. Aber wenn ich die App starte, sagt sie mir, dass sie die Lizenz nicht finden kann. Kann ich irgendetwas tun, um die App zu finden, um die Lizenz zu finden?

0
Wenn dies keine 32-Bit-Anwendung ist, kann sie diesen Schlüssel nicht lesen Ramhound vor 6 Jahren 0

1 Antwort auf die Frage

3
Ian Boyd

Es gibt nichts, was Sie tun können, damit die App funktioniert.

Was passieren sollte, ist, dass der App-Entwickler seinen Aufruf an RegOpenKeyEx von ändern muss, wenn er weiß, dass sich die Lizenz immer in der 32-Bit-Registrierung befindet

RegOpenKeyEx(HKEY_CURRENT_USER, ...); 

zu

RegOpenKeyEx(HKEY_CURRENT_USER | KEY_WOW64_32KEY, ...); 

Oder das 32-Bit-Installationsprogramm muss die Lizenzinformationen in der 64-Bit-Registrierung speichern, indem Sie Folgendes ändern:

RegOpenKeyEx(HEKY_CURRENT_USER, ...) 

zu

RegOpenKeyEx(HKEY_CURRENT_USER | KEY_WOW64_64KEY, ...); 

Da keines dieser Dinge unter Ihrer Kontrolle steht; Sie sollten die Lizenzinformationen einfach mit RegEdit selbst aus der 32-Bit-Registry in die 64-Bit-Registry kopieren.

Superuser-Leser sind mit Win32-APIs und or-ed-Flags nicht sehr vertraut. Fügen Sie einige Erklärungen aus der alten Schule hinzu, damit die allgemeinen Leser verstehen können;) Biswapriyo vor 6 Jahren 0
@Biswapriyo Wirklich der erste Satz beantwortet es; und spiegelt wider, was du gesagt hast. Ian Boyd vor 6 Jahren 0
@Biswapriyo - Wenn ein Leser mit den Win32-APIs nicht vertraut ist, ist es an ihm zu lernen. Diese Antwort ist richtig. Ich sehe keinen Weg, um mehr Menschen dazu zu bringen, es zu verstehen. In diesem Fall ist Fachwissen erforderlich. Ramhound vor 6 Jahren 1