nsis

Embedding other installers using NSIS

孤人 提交于 2019-12-07 11:43:26
I an new to NSIS scripting. I want to create a custom installer which would wrap around another installer(FEKO). This method Embedding other installers suggested on the NSIS website did not work for me The script compiles correctly but the embedded application is not installed. Here is the script !include "MUI2.nsh" !include "logiclib.nsh" !insertmacro MUI_PAGE_WELCOME !insertmacro MUI_PAGE_DIRECTORY !insertmacro MUI_PAGE_COMPONENTS !insertmacro MUI_PAGE_INSTFILES !insertmacro MUI_PAGE_FINISH !insertmacro MUI_LANGUAGE "English" #Name of the application we are trying to install Name "FEKO" #

Can .bat file execute an sql query and return a value?

懵懂的女人 提交于 2019-12-07 06:26:59
问题 How can I call a query from a .bat file? (say my query is: select version from system). Can my .bat file save the output that this query returns? I wanna use this output in my NSIS script. 回答1: For Oracle: How can I issue a single command from the command line through sql plus? @echo select version from system; | sqlplus username/password@database You can either pipe the output to a file and use that, or wrap this in a for command to parse the output within your batch file. 回答2: EDIT: This

NSIS - check if registry key value exists

拟墨画扇 提交于 2019-12-07 01:42:17
问题 I need to check, if a registry value exists. How can I do that? My first approach: 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} But this also works, when the value doesn’t exist. I guess, because "doesn’t exist" and empty string are handled the same way. With Registry.nsh I did it like this: ${registry::Read} "HKLM

Detecting an already running Java application from NSIS

℡╲_俬逩灬. 提交于 2019-12-06 13:45:42
问题 Yes, it's well documented how to get the name of your application's exe file and see if it is running. When the application in question is a java application, the running exe will always be java.exe, and so this method falls flat on its face since there could be any number of java applications currently running, all launched with java.exe. Each one will differ in the commandline parameters passed, including the main class name. I need to know the commandline parameters to java.exe so I can

NSIS restrict folder installation

烂漫一生 提交于 2019-12-06 13:24:50
I have a NSIS installer I am working on that I need to be able to prevent installation to the "user error" folders (i.e. $SYSDIR, $WINDIR, $DESKTOP etc... ) I want them to be able to chose a installation path but just have the next button be disabled if they chose a location as listed above. I have searched everywhere and can't find an answer to this one. I was trying to use this but I can still install to desktop: !define MUI_PAGE_CUSTOMFUNCTION_LEAVE MyDirLeave !insertmacro MUI_PAGE_DIRECTORY ... Function MyDirLeave Push $0 StrLen $0 $DESKTOP StrCpy $0 $INSTDIR $0 StrCmp $0 $DESKTOP 0

NSIS silent install ( started via code )

爱⌒轻易说出口 提交于 2019-12-06 12:27:00
问题 I'm trying to build an NSIS installer that will do the following: 1 When run normaly it will install the application with a installer with the usual choices. 2 When the installer is run with /S switch it silent installs, it's ok if it shows UI. But it should be automatic. It seems to me that the installer "works", as it runs and then correctly starts the application again. But it has not updated anything, it's almost as if it runs, but does not copy any files. When it's a silent install, it's

set the font of a custom label added on a custom dialog page in nsis installer

£可爱£侵袭症+ 提交于 2019-12-06 10:43:10
how to set the font of a label added on a custom added page in nsis installer To create the label i have used this : nsDialogs::Create 1018 var Label ${NSD_CreateLabel} 0 0 100% 32u "PLEASE CHOOSE WHAT DO YOU WANT TO INSTALL:" Pop $Label !include nsDialogs.nsh var Label page custom pre function pre nsDialogs::Create 1018 ${NSD_CreateLabel} 0 0 100% 32u "PLEASE CHOOSE WHAT DO YOU WANT TO INSTALL:" Pop $Label CreateFont $0 "Arial" 18 SendMessage $Label ${WM_SETFONT} $0 1 nsDialogs::Show functionend 来源: https://stackoverflow.com/questions/5894473/set-the-font-of-a-custom-label-added-on-a-custom

How to create an installer out of an installer?

瘦欲@ 提交于 2019-12-06 07:38:07
I have an old legacy application around for which I only have the installer. it doesn't do anything more than uncompress and register itself and his library's. As i don't have the source-code it gives me a lot of headaches in maintenance problems. In some particular computers (Acer Aspire One with Windows) just do not run. I would like to extract the files and re-create this installer with NSIS. Is this possible or I'm nuts? The original installer has been created with Ghost Installer Studio. One option is to find a machine that it does run on, and then install some "install guard" software

NSIS script - download .NET framework, DirectX

别说谁变了你拦得住时间么 提交于 2019-12-06 05:51:35
问题 Can a NSIS script download .NET and DirectX from microsoft, then install it? I don't want to include the installers in my installer because they are huge. 回答1: Here's an example for .Net : Function GetDotnet ;// looks for local copy before downloading, returns path in $0 Pop $0 ${If} ${FileExists} "$InitDir\dotnetfx35.exe" StrCpy $0 "$InitDir\dotnetfx35.exe" ${ElseIf} ${FileExists} "$InitDir\dotnetfx35setup.exe" StrCpy $0 "$InitDir\dotnetfx35setup.exe" ${Else} Call DownloadDotnet StrCpy $0 $0

Can Inno Setup send key and mouse presses, if not, how can this be done using an Installer?

孤者浪人 提交于 2019-12-06 04:53:27
I'm a newbie to both [Microsoft Windows] installers and Inno Setup but I need to know if Inno Setup (or an equivalent) can be used automate the input to a GUI-based windows program, during install, e.g. by clicking on a menu and selecting a sub-item, for instance? I'm aware of AutoIt and AutoHotkey , as well as NSIS , however Inno Setup comes highly recommended as a software packager/installer, and I also like the idea of learning a little Pascal programming, into the bargain ;) Any ideas or thoughts are most welcome :-) TLama I agree with @Deanna, the SendInput function is the best for