@ Vinod Надеюсь, вы используете последнюю версию NSIS.Кроме того, включите либо последнюю версию заголовков с NSIS (nsh.zip), либо включите функцию WordFind
!include "WordFunc.nsh"
в ваш скрипт .nsi.
С этим вы можете использовать WordFindФункция для извлечения имени файла (jre1.8.0_91 в вашем примере) из пути к файлу (C: \ Program Files \ Java \ jre1.8.0_91 в вашем примере), например:
${WordFind} "${FilePath}" "\" "-1" $R0
$ R0будет содержать последнее «слово» (jre1.8.0_91) из пути к файлу.
Это было достигнуто путем использования обратной косой черты («\») в качестве разделителя строки и выбора первого слова, считаяназад ("-1") от конца строки.