Using Advanced Installer. When I build and run my install project, after the install there is a folder called MyCompany (equivalent to [Manufacturer]) located within the ApplicationData folder (which resolves to C:\Users\Joey\AppData\Roaming\ on my system).
Within that particular folder is another folder called MyProgram 1.0.0 (equivalent to [ProductName] [ProductVersion].
And within that folder is another folder called install. And within that folder is a file called setup.msi with a size of 1.17MB
I have no understanding of why this file and these folders are being created. Further, after I uninstall my app, they get left behind on the system, which means my app is creating garbage.
Can someone please explain why this is happening? And also...if I can't cause this to not be present in the file system while my app is installed, how can I avoid leaving it behind on the file system after I uninstall?
Thanks.
When you are building an EXE setup file, that is the default extraction folder for the EXE, where you can find all the resources during the installation. You can change it from Media page, "Extraction folder".
It is not deleted after uninstall due a bug in Advanced Installer, you can find more details and a workaround on the forums.
Related
So I have recently developed an app for the windows store, I packaged it into an APPX package. The problem is that windows auto installs it into a non-accessible folder meaning I cannot reference .exe and .pdf files.
Is there a way to make it always install 2 files in the same place, for example the two files which need to be edited install on desktop and the rest of the app in the usual install location?
Can I do this using two separate .APPX files?
No, all APPX/MSIX packages are installed/extracted under the ProgramFiles/WindowsApps folder.
This folder is read-only, only the OS can write in there (when it's installing the app).
The solution is to copy the files you want from the install folder, the first time a user launches your application.
I am trying to edit my config file, which I am told is located at $EXIST_HOME/conf.xml. However, when I type $EXIST_HOME into my terminal nothing happens, and I have no idea where to look for the file in my file system. I am using OSX, and installed eXist using the standalone GUI, and was not asked where to install files at setup.
How can I get to the config file?
$EXIST_HOME is just used to represent wherever you installed eXist to. On many Linux/Unix based systems (including Mac OS X) it is recommended to set this environment variable in your profile to the location where you installed eXist. If you do not, when you try to start eXist it will try and self-determine this from the location of its binaries.
If you installed eXist from the .dmg file which is provided for Mac OS X users, then you can drag and drop eXist to wherever you wish, however typically this would be /Applications/eXist-db.
If you installed eXist from the .jar installer by running java -jar eXist-db-setup-2.2.jar or double-clicking the Jar file (if your computer is configured to execute Jar files), then the second screen of the installer prompts you for the location to install eXist to. The default location set for Mac OS X is /Applications/eXist-db.
So if you didn't change the defaults, your $EXIST_HOME would be /Applications/eXist-db.
On OS X, as adamretter correctly states, the default installation directory when using the Exist-DB installation disk image (.dmg) is /Applications/eXist-db. However, when you navigate to the /Applications/eXist-db folder and click on the exist-db icon, as if to open the directory for further browsing, all that happens is that the Exist-DB server starts. Less experienced Mac users might not realise that you have to right-click with the mouse on the Exist-DB icon in the Applications folder and choose 'Show Package Contents' from the menu in order to view the directories that sit beneath it.
The config.xml file can be found at:
/Applications/eXist-db.app/Contents/Resources/etc/config.xml
P.S. Don't forget to make a backup copy before you start editing :)
Using Advanced Installer, I have created and run a simple installer that contains a single .exe.
This .exe started as an executable jar (w/ splashscreen) and was built into a Windows .exe using Launch4j.
Once the application is installed (in C:\Program Files (x86)...), I can't execute it from the installation directory. However, if I copy the .exe to anywhere else, Desktop, or any other directories created by other installers, the .exe will start perfectly.
This appears to be a folder or application permissions issue. Comparing the permissions between this folder and the one created by Advanced Installer, the permissions and settings are identical.
The ONLY difference I see, between the installed .exe and the same .exe copied to another folder, is that the "Edit Permissions" button has an admin shield on it (one originally installed by AI).
Is there a setting in Advanced Installer that will allow my .exe to run once installed, or is this just trickery employed by AI to get you to pay for a more robust version? I am unable to make any changes in the OS that enable this file to run in the directory created by AI.
If the executable fails to run from Program Files but does works from another folder it most probably happens that your EXE needs write access to that folder. If you launch it with the option "Run as administrator" it should work. This is not caused by a limitation from Advanced Installer.
Starting with Vista onward you can embed a manifest file into an executable file, that specifies for the OS the execution level, so you can set the level to "RequireAdministrator", thus your will EXE will always behave as you launch it with the option "Run as administrator" when launched from a shortcut or double-clicked.
The cause of this error was that the target directory included an exclamation mark. "!".
I had switched to using InnoInstaller and it was working in an initial version, until I later switched the target dir to include the exclamation mark, and it was broken in the same way. (Removing it fixed.)
Have no idea why this was causing the problem, just an fyi.
I have created a PackageMaker (OSX) Installer that successfully installs two items, a main file, and a folder of files (with root), within '/Applications/[specific Application folder]/' path. Now I want to make sure the installer doesn't install the folder if it already exists (but I do want to overwrite the main file). Pretty basic, I'm sure ... but how is this best done?
Standard procedure:
You will have to create two component packages- one for the main file and the other for the folder of files.
Now in your Distribution script, you can disable the installation of second package based on the existence of the folder on the system.
Workaround:
Use your preinstall script to rename the existing folder on the system, let the new folder get installed, and then from the postinstall script, delete the newly installed folder and rename the older package back to the original name.
In connection with Server Fault question Need help with putting Cygwin on DVD for a offline install:
I'm trying to put the whole of Cygwin on a DVD, so I can have it with me for an offline install on a computer which doesn't have a network connection. I downloaded setup.exe, put "download without install" and selected "Current version" and under "All" I selected "Install".
After it downloaded all of it, I burned it onto a DVD.
Now when I try to install the thing, it reports some missing dependencies and gives out a lot of "NULL" (and I do mean A LOT) of errors.
Where did I go wrong? I'm assuming what I'm trying to do (put it on a DVD) is possible using that technnique?
Just to notice. I'm not trying to create a live Cygwin disc, just put the installer on the DVD to be able to install it onto the hard disk drive.
The easiest way to do this is to do the following:
1) Run the Cygwin setup.exe
2) Choose "Download without Installing"
3) When prompted, provide the "Local Package Directory" - this should be different from your root directory specified in the previous step.
4) Choose all the packages you need
5) Let the download proceed
Now you need to put the entire Local Package directory on your CD, including the parent. So, if you set the local package directory to c:\temp\CygPack, copy the CygPack directory to your CD without changing anything inside of it. Then:
1) Run the Cygwin setup.exe
2) Choose "Install from Local Directory"
3) Choose the package directory (CygPack)
4) Proceed with the install
The most important part of this is to change nothing in the package directory, and select the same top level directory you used during the download. The installer expects to find the directories/files in a certain layout.
There's now a tool, called "pmcyg", for building a self-contained off-line Cygwin distribution from a user-supplied list of packages. The tool will download all the selected packages, together with any that they depend on and the Cygwin installer program, to create a directory tree that can be directly burned onto a DVD.
pmcyg and is available via SourceForge.net.
You sure can! First link I found: Cygwin Offline Install