Build NSIS script as a MSI package

Unfortunately, No. NSIS lets you create scriptable, procedural installation packages. It’s simple, easy to use and has a number of features not present in Windows Installer. Windows Installer (MSI) creates database driven, transactional installation packages. When written properly a Windows Installer package is very robust, a file gets corrupted/deleted and it will be automatically reinstalled. … Read more

Installer and Updater for a python desktop application

There is a suite of tools from the cloudmatrix guys that addresses that problem. esky is an auto-update framework for frozen apps that is compatible with the common python “packaging” frameworks. signedimp tries to ensure that apps are not modified after they are signed, and to minimize invasive Windows UAC dialogs. myppy aims to insulate … Read more

How do I detect which kind of JRE is installed — 32bit vs. 64bit

The JVM architecture in use can be retrieved using the “os.arch” property: System.getProperty(“os.arch”); The “os” part seems to be a bit of a misnomer, or perhaps the original designers did not expect JVMs to be running on architectures they weren’t written for. Return values seem to be inconsistent. The NetBeans Installer team are tackling the … Read more

Exec vs ExecWait vs ExecShell vs nsExec::Exec vs nsExec::ExecToLog vs nsExec::ExecToStack vs ExecDos vs ExeCmd

1) 2) 3) Exec and ExecWait use CreateProcess internally and can only start programs and batch files. ExecShell uses ShellExecute which means that it can also launch any registered filetype (.txt .chm etc) and URLs. It should also be used if the program you are starting needs to elevate with UAC. 4) nsExec redirects stdout … Read more