MSI disabling some system requirement checking
Hi,
I have a MSI which will install a component into drive H:\ and the MSI will be depolyed via Citrix. The problem is, when you try to install the MSI, it complains that drive H:\ does not exist and therefore exits with "Error 1327. Invalid Drive: H:\"
Is there a way to prevent the MSI from checking if H:\ exists?
The component is currently set as an advertised feature so when a user uses the component it will be installed. Can I disable the detection of H:\?
Cheers
I have a MSI which will install a component into drive H:\ and the MSI will be depolyed via Citrix. The problem is, when you try to install the MSI, it complains that drive H:\ does not exist and therefore exits with "Error 1327. Invalid Drive: H:\"
Is there a way to prevent the MSI from checking if H:\ exists?
The component is currently set as an advertised feature so when a user uses the component it will be installed. Can I disable the detection of H:\?
Cheers
0 Comments
[ + ] Show comments
Answers (5)
Please log in to answer
Posted by:
andler
19 years ago
The problem is that you had H:\ mapped when installing and possibly wrote somthing to H:\ while performing repackaging.
You will find the H:\ in the property table and can delete it there.
It will most likely be represented by a . (dot) with TargetPath or INSTALLDIR as parentfolder.
It is also registered in some other table as well, make a search in all your tables for H:\.
Don't recall the name of the table just now.
andler
You will find the H:\ in the property table and can delete it there.
It will most likely be represented by a . (dot) with TargetPath or INSTALLDIR as parentfolder.
It is also registered in some other table as well, make a search in all your tables for H:\.
Don't recall the name of the table just now.
andler
Posted by:
Jimmy.H
19 years ago
Posted by:
TomB
19 years ago
Jimmy,
Can you clear some thing up as I am confused. As I understand it you specificaly made the MSI to install files to the H:\ Drive. During the install of the MSI there is no H:\ Drive to the MSI produces and error. I do not think this is a condition you can turn off, the the component is set to install to a hard coded path and it is not present then the install fails.
An option would be if your H:\ Drive is a Enviornment Variable like %HOMEDRIVE%.
Then you could try to add a condition to the component that looks like:
NOT %HOMEDIRVE~=""
Components can take a condition of an enviornment variable in the for of %variable. So by using the bolean expression NOT and have it = nothing it should only install when a user is logged in and installing the package. If using the system account to do the advertisement this should work.
Can you clear some thing up as I am confused. As I understand it you specificaly made the MSI to install files to the H:\ Drive. During the install of the MSI there is no H:\ Drive to the MSI produces and error. I do not think this is a condition you can turn off, the the component is set to install to a hard coded path and it is not present then the install fails.
An option would be if your H:\ Drive is a Enviornment Variable like %HOMEDRIVE%.
Then you could try to add a condition to the component that looks like:
NOT %HOMEDIRVE~=""
Components can take a condition of an enviornment variable in the for of %variable. So by using the bolean expression NOT and have it = nothing it should only install when a user is logged in and installing the package. If using the system account to do the advertisement this should work.
Posted by:
Jimmy.H
19 years ago
So from what i understand, i can't stop the MSI from checking for a H drive prior to install, even with the condition added in to the component?
Also, is there a way to set a component to install to a directory thats based on a environment variable? Using the %HOMEDRIVE% variable for example, can I make a component install to %HOMEDRIVE% without the MSI trying to create a physical folder called "%HOMEDRIVE%"?
Also, is there a way to set a component to install to a directory thats based on a environment variable? Using the %HOMEDRIVE% variable for example, can I make a component install to %HOMEDRIVE% without the MSI trying to create a physical folder called "%HOMEDRIVE%"?
Posted by:
TomB
19 years ago
The thought is that you are not removeing the check for the H Drive only that if the Environment varialbe is not present the componet is not installed.
The best way i can think of doing what you want to do is to create a VBScript that checks the Enviornment variable and if present set it to a MSI property.
Then set that script in a CA.
Then create a second CA to set a folder to the value of the property set by the other CA. You can also put a condition on the second CA to only run if the property is present.
Then you can set the Component to install to the new directory set by the Second CA.
It seems like quite a process, but if you need more help let me know and I can provide more detail.
The best way i can think of doing what you want to do is to create a VBScript that checks the Enviornment variable and if present set it to a MSI property.
Then set that script in a CA.
Then create a second CA to set a folder to the value of the property set by the other CA. You can also put a condition on the second CA to only run if the property is present.
Then you can set the Component to install to the new directory set by the Second CA.
It seems like quite a process, but if you need more help let me know and I can provide more detail.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.