2016-09-26 11 views
0

node.jsをアップグレードする必要があるかどうかを知るために、NSISスクリプトでノードのバージョン番号にアクセスしようとしています。これを行うには、キーHKLM \ SOFTWARE \ Node.js \ ServerTypeに必要な番号が含まれていることがわかりました。一部のレジストリキーにアクセスできない

私は経由でアクセスしようとしました:

ReadRegStr $0 HKLM "SOFTWARE\Node.js" ServerType 

しかし、それは動作しませんし、$ 0は常に空です。

私もこれらのキーを使用して、奇妙な行動を持っている:

ReadRegStr $0 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" CurrentVersion 

は私のJava JREのために良いバージョンを返しますが、私はレジストリに手動で変更したときに、私が実行したとき、それは変更されません。 NSISインストーラ=>インストーラが私が設定したパス(インストーラはx86とx64でのインストーラが多分?)でそれを読んでいないと感じました。

私は少し失われ、次に何をするのか分からない。あなたはなにか考えはありますか ?

答えて

0

64ビットバージョンのWindows 32ビットアプリケーションでは、レジストリの特別な32ビットビューが表示されますが、これはRegeditに表示されているものとは異なります。 Regeditでは、これらのキーの基礎はWow6432Nodeの下にあります。いくつかのキーは両方のビューでも共有されます。

NSISの64ビットビューにアクセスするには、SetRegView命令を使用できます。

+0

まさに私が探していたものです、ありがとうございました。 – Quadear

関連する問題