InstallShield rollback backup directory? - installshield

When InstallShield is about to overwrite a file, it first create a copy of that file, so that in case of some installation error and the installation needs to abort, The system could be restored to its original state (rollback).
I would like to know where is that directory?

The backup directory is different from machine to machine, and from setup to setup. you can find out by reading the installation log. See http://resources.flexerasoftware.com/web/pdf/archive/msi_writing_to_the_log_file.pdf

Related

gvNIX: Recover a backup when App crashes

Which is the way to recover a gvNIX backup? I have a trouble with one command and the webApp crashes. I would like to revert to a previous version.
If you saved a copy with 'backup' command just unzip the generated .ZIP file.

Installshield LE is not updating the files while attempting upgrade

I've spent literally the last 5 hours around this, and can't get it to work.
I've done everything it's said in similar questions.
Change the ProductCode, keep the old UpgradeCode, Change product version.
Again and again. It doesn't replace the updated .exe file it's supposed to.
What am I missing?
Edit: I also have doublechecked the .exe build in visual studio, there it's builded and working properly. Only when I run the setup that's supposed to copy it to install folder, and only then it fails, keeping the old .exe file there, and not updating.
Does the exe on the target system have the same or higher file version than the exe you are installing? Windows installer will not overwrite a file that has a higher file version then the file it is installing.
look at the install log. search for the component name, check the Request/Action state. Is the state set to "Local"? Also search for the file name to see if msiexec tried to copy it.

Installshield - The files for installation requirement could not be found. The installation will now stop

I am using InstallShield to build an installer to install some custom prerequisites on my client computers. But everytime I try to run the installer, I get:
The files for installation requirement Crystal Runtime x86 could not be found. The installation will now stop. This is probably due to a failed, or canceled download.
I have told the prereq where the File sits on my local development machine, and it seems like InstallSheild takes this file, and copies it to the ISSetupPrerequisites folder in the same directory as the .exe file it generates. I can confirm my file exists in the ISSetupPrerequisites folder.
Is there something else I need to do to tell the installer where my .msi installer is for my prerequisite?
My guess is that you've copied the installer (setup.exe or something similar) to the PC that you're installing on but not the ISSetupPrerequisites folder. You need to do this because you haven't changed the setting that puts the prerequisites (Crystal Runtime x86 in your case) inside the installer itself.
To enable this, go to your release's "Setup.exe" tab and change the value of the property called "InstallShield Prerequisites Location" from "Copy From Source Media" to "Extract From Setup.exe".
You should verify the checksum and filesize attributes in the redistributable's pre-requisite file. If these don't match the local/downloaded file you'll see that error
(Example files node for MSFT VS 2010 Tools for Office Runtime)
<files>
<file LocalFile="<ISProductFolder>\SetupPrerequisites\VSTOR\vstor_redist.exe" URL="http://download.microsoft.com/download/B/5/1/B51D2F9E-1432-4B76-8248-F47316BB8EE0/vstor_redist.exe" CheckSum="a1b5c8fb246a9d0d66f12d3b6f5e471d" FileSize=" 0,40051808"></file>
</files>
Make sure the CheckSum value inside the .prq file is exactly the same as the MD5 checksum of the package copies on the web url and under < ISProductFolder >\SetupPrerequisites
You can calculate MD5 on windows using the command
certutil.exe -hashfile myPackage.exe MD5

Why is Nuget trying to access my SVN files?

I'm trying to update the Nuget packages in a solution I have, but this is what it does for all of them when I try to update
Successfully installed 'knockoutjs 2.2.1'.
Updating 'knockoutjs' from version '2.2.0' to '2.2.1' in project 'MyProject'.
Directory 'Scripts\.svn\text-base' is not empty. Skipping...
Directory 'Scripts\.svn' is not empty. Skipping...
Successfully removed 'knockoutjs 2.2.0' from MyProject.
Successfully added 'knockoutjs 2.2.1' to MyProject.
Access to the path '(solution path)\packages\knockoutjs.2.2.0\Content\Scripts\.svn\text-base\knockout-2.2.0.debug.js.svn-base' is denied.
Access to the path '(solution path)\packages\knockoutjs.2.2.0\Content\Scripts\.svn\text-base\knockout-2.2.0.js.svn-base' is denied.
Access to the path '(solution path)\packages\knockoutjs.2.2.0\Content\Scripts\.svn\all-wcprops' is denied.
Access to the path '(solution path)\packages\knockoutjs.2.2.0\Content\Scripts\.svn\dir-prop-base' is denied.
...
It pretty much does that for every SVN file. Then says it wasn't properly uninstalled and I need to restart Visual Studio for the changes to take effect, but that doesn't solve anything. I have to manually clear out the files and remove the .deleteme file that gets created.
I also tried running Visual Studio 2012 as Administrator but that didn't change anything. I also have full permissions on my Windows 7 machine to the entire project.
I thought .svn folders were supposed to be ignored by Nuget? Is it trying to delete the older package folder? I'm fine with it taking out all the content files, as long as it leaves the .svn folder alone. I can always mark the files as deleted on the next commit.
Also, I know I can run Nuget without commiting the packages to source control, but I don't want to do that. The feature isn't enabled and the checkbox that lets Nuget download missing packages is not checked. So if it thinks that source control integration is disabled I don't know why.

InnoSetup: "The volume for a file has been externally altered"

InnoSetup appears to be corrupting my executable when compiling the setup project.
Executing the source file works fine, but executing the file after installation produces Win32 error 1006 "The volume for a file has been externally altered".
I've tried disabling compression and setting various flags, to no avail.
Has anyone experienced this?
UPDATE
Okay there's been some twists to the situation:
At the moment, I can even manually copy a working file to the location it is installed to and get "The volume for a file...". To be clear: I uninstall the application, create the same folder and paste the files there and run.
UPDATE 2
Some more details for those that want it:
The InnoSetup script is compiled by FinalBuilder using output from msbuild, also executed by FinalBuilder, running on my machine with XP SP3. The executable is a C# .Net assembly compiled in configuration Release|AnyCPU. The file works when executed in the folder the Install Script takes it from. It produces the same behaviour on an XP Virtual Machine. The MD5 hashes of the source file and the installed file are the same.
Ok, I just received this same error. I have a config which my executable uses. I looked in my folder a million times - but finally notice the config file was zero length. I corrected the config and the error stopped occurring.
Check the simplest things first... good lucK!
ERROR_FILE_INVALID
1006 (0x3EE): The volume for a file has been externally altered so that the opened file is no longer valid.
I suspect you're having this issue after moving the files to a network share. It seems to me that what's happening is you have an open file-handle - possibly to a temporary file you are creating - and then some other process (perhaps running on a different host) is coming along and renaming or deleting that file or its' parent directory tree.
So my advice is:
Try installing to a local directory
Run after an anti-virus scan, in
safe-mode or on a different machine
to see if there isn't some
background nasty changing
volume/directory properties while
your program is running.
Make sure the program itself isn't doing anything weird with the volume or directory tree you're working with.
Never seen that before. I've got a few questions and suggestions:
- Are you signing the EXE during the compile of the setup? If so, try leaving that part out.
- WHat OS are you installing on or does it happen on all machines you've tried?
- Run the install with the /LOG="c:\install.log" option and post the log. It might show something happening during install.
- Run a byte compare or MD5 check on the source EXE and the installed EXE. Are they the same? Do they have the same version resource?

Resources