5
レジストリ値が存在するかどうかを確認する必要があります。どうやってやるの?NSIS - レジストリキーの値が存在するかどうか確認してください
私の最初のアプローチ:
ReadRegStr $0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports" "NUL:"
${IF} $0 == ""
MESSAGEBOX MB_OK "NUL exists"
${ELSE}
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports" "NUL:" ""
${ENDIF}
しかし、値が存在しない場合、これはまた、動作します。私は、 "存在しない"と空の文字列が同じ方法で処理されるためだと思います。 Registry.nshで
私はこのようにそれをやった:
${registry::Read} "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports" "NUL:" $var1 $var2
${IF} $var2 == "REG_SZ"
しかしregistry.nshでポップ$ {_ STRING}が動作しないので、私は、エラーを取得します。
ヘルプと提案をよろしく!
ありがとうございます!それは完璧に働いた! – user3629892