Solved

Unable to move a folder with a Deferred Custom Action in Admin Studio 8.5

Posted on 2011-03-25
2
654 Views
Last Modified: 2012-05-11
Hi all,

I'm trying to move a folder from "C:\Program Files" into "C:\Documents and Settings\All Users\Documents" after it gets installed by my MSI+MST. To do so, I'm using a Deferred Custom action with the following VB Script:

Dim filesys, folderTomove
set filesys = CreateObject ("Scripting.FileSystemObject")
set folderTomove = filesys.GetFolder ("C:\Program Files\Infragistics\Documents\Infragistics\")
folderTomove.Move ("C:\Documents and Settings\All Users\Documents\")

Open in new window


The folder is somewhat big with almost a hundred of subfolders and files (I suppose it doesn't matter, but I include it just in case)

The Custom Action is Deferred and set to run AfterScheduleReboot

When trying to install it gives me the error when it's only 1 second away from finishing:
- 2146828230...File Already exists, Line 4, Column 1.

I have tested the code and it works when outside of the CA. Also tried to move the folder manually while the error was displaying, and it works. I have also tried to execute an independent *.vbs with the same code while the error was there (so the installation was paused because of the error, thus all the files were still there), and it works, it only fails when trying to execute from the CA.

I have tried with and without the last "\" when declaring the source path on the CA script and still fails to run.

At this point it appears that the issue is the CA, not the code itself, but not sure. I have found no useful information on the Install log about this (had to break it in two in order to post it here)

WinXP-Install-log-1st-part-.txt
WinXP-Install-log-2nd-part-.txt

I can't change the install directory directly into the component because of the client's policies, neither can use the "MoveFolder" table since the folder I want to move is installed with the MSI (thus it's not a pre-existing folder).

Any assistance will be greatly appreciated  
0
Comment
Question by:Sergio_Apodaca
2 Comments
 
LVL 40

Accepted Solution

by:
Vadim Rapp earned 500 total points
ID: 35221985
Specify full destination path in the script. Such as,

CreateObject ("Scripting.FileSystemObject").movefolder "C:\Program Files\Infragistics\Documents","C:\Documents and settings\All Users\documents\Infragistics"
This will create new folder Infragistics under C:\Documents and settings\All Users\documents and move there all files from C:\Program Files\Infragistics\Documents .
0
 

Author Closing Comment

by:Sergio_Apodaca
ID: 35470276
I'm so sorry for the delay on rating your question. There were some other issues that required urgent attention and just now I was able to get back to this package. Thank you very much, the code worked as expected
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

One of the frequent problems with the installations is when some file or registry entry is not removed from the system upon un-installation of the product. Clean removal is always highly desirable. One major reason for that is badly authored inst…
Among others, I monitor the Windows Installer zone and Installer zone. I find that many of the questions could be answered much more quickly if a Windows Installer verbose log were submitted with the question.   However, I do not always have t…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question