2017-06-06 17 views
0

NSISインストーラのレジストリキーをインストールする必要があります。私はCPACKで作業しています。このコマンドはCPACK_PACKAGE_INSTALL_REGISTRY_KEYです。そこ多くのドキュメントは、インターネット上ではありませんが、私は推測する:どのようにCPACK_PACKAGE_INSTALL_REGISTRY_KEYでレジストリキーを追加しますか?

set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "MyReg \\ MYKEY" "$ {INSTALL_DIR} \\" )

それともあまり変わらない何かが。

私はまた、他のトピックでこれを読んで: listAPPEND CPACK_NSIS_EXTRA_INSTALL_COMMANDSを " InstallDirRegKey HKCU \" ソフトウェア\テスト\ "\ "RegEntry \" ")

しかし、これを使用する理由私は理解していませんでしたCPACKコマンドの代わりに最後のコマンド。

は、私がCPackについて何も知らないが、私はCPACK_PACKAGE_INSTALL_REGISTRY_KEYもInstallDirRegKeyにマッピングして、レジストリに一般的な値を書き込むために使用することはできないと思い、あなたの助け

+0

InstallDirRegKeyはちょうど、レジストリの値からデフォルトの$ INSTDIRパスを設定します。 – Anders

答えて

0

いただきありがとうございます。

生NSIS命令を挿入するには、このような何かを試してみてください:

SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS " 
    WriteRegStr HKLM 'Software\\\\MyApp' 'MyValue' 'MyData' 
    WriteRegDWORD HKLM 'Software\\\\MyApp' 'OtherValue' '4' 
    ") 
SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS " 
    DeleteRegKey HKLM 'Software\\\\MyApp' 
") 
+0

はい、それは動作します! '\'を '\\\\'で置き換えるだけです。ありがとうございました – sovif

関連する問題