MSI installer can't install 3rd party setup files
Posted: Tue Sep 26, 2006 2:58 am
I've created an application whitch will check if my msi-installer has been installed.
If not it creates a new process with administrator privileges, so the msi-installer can run.
It also creates a "NET USE" , because this administartor process does not have any mappings to the server (where the msi is located)
The application will then passes a commandline (Path) to the msifile which containes the location of the msi-file.
In a sub directory of the original msi-file are the setup-files of the 3rd party setups located.
Example:
{Sharename}:\\SetupFiles\\Mosos\\MososSetup.msi
{Sharename}:\\SetupFiles\\Mosos\\Components\\Dotnetfx.msi
{Sharename}:\\SetupFiles\\Mosos\\Components\\msxml.msi
All this workes fine, and the setup will start correctly.
If the prerequisits are not present the msi-installer will then try to start the 3rd party setup(s) using the Run Program command.
A strange problem occurs:
Using Windows XP the Dotnetfx and msxml setup-files will start, but the administrator privileges has dissapeard ! And in in Windows 2000 SP3 (our minimum requirement) nothing happens.
I've added a kind of errorhandler, checking if there are any files present in the subdirectory using the "Find all files" command.
And to my surprise running in windows 2000, it does not find the file(s) !!
I've also tested it, without my application, just by creating a DOS-box with administrator privileges, and entered the commandline by hand. But even then the setup will not run in windows 2000.
Any idea's how to solve this?
I really do not want to embedd the necessary requirements !!
It seems the run command uses the currnet logged-in user account in windows XP and windows 2000 can't seem to access the created NET USE share.
Thanks.
Ton Blokhuizen
If not it creates a new process with administrator privileges, so the msi-installer can run.
It also creates a "NET USE" , because this administartor process does not have any mappings to the server (where the msi is located)
The application will then passes a commandline (Path) to the msifile which containes the location of the msi-file.
In a sub directory of the original msi-file are the setup-files of the 3rd party setups located.
Example:
{Sharename}:\\SetupFiles\\Mosos\\MososSetup.msi
{Sharename}:\\SetupFiles\\Mosos\\Components\\Dotnetfx.msi
{Sharename}:\\SetupFiles\\Mosos\\Components\\msxml.msi
All this workes fine, and the setup will start correctly.
If the prerequisits are not present the msi-installer will then try to start the 3rd party setup(s) using the Run Program command.
A strange problem occurs:
Using Windows XP the Dotnetfx and msxml setup-files will start, but the administrator privileges has dissapeard ! And in in Windows 2000 SP3 (our minimum requirement) nothing happens.
I've added a kind of errorhandler, checking if there are any files present in the subdirectory using the "Find all files" command.
And to my surprise running in windows 2000, it does not find the file(s) !!
I've also tested it, without my application, just by creating a DOS-box with administrator privileges, and entered the commandline by hand. But even then the setup will not run in windows 2000.
Any idea's how to solve this?
I really do not want to embedd the necessary requirements !!
It seems the run command uses the currnet logged-in user account in windows XP and windows 2000 can't seem to access the created NET USE share.
Thanks.
Ton Blokhuizen