Windows installer (.msi) files shared by programs

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Windows installer (.msi) files shared by programs

Louis LaBrunda
Hi All,

This may be more of a Windows question than a Smalltalk question but since I want to do it with Smalltalk, I'm asking here.

I have more than one program that shares the distributed DLLs and time zone files.  I use Advanced Installer, it's like Install Shield but less expensive.  They make .msi files and can tell Windows that a files is shared between programs so the files isn't removed until the last program that uses it is uninstalled.  My problem is that with Advanced Installer I have to indicate a file is shared one at a time and there are a lot of time zone files.

Does anyone know how to tell Windows a file is shared in this way?  Hopefully it is with some kind of Windows call passing the file name and path.

Lou

--
You received this message because you are subscribed to the Google Groups "VAST Community Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/28d2eba0-8282-46ac-989e-91c3788146bcn%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Windows installer (.msi) files shared by programs

Seth Berman
Hi Lou,

The engineer that builds our product installers knows how to do that in InstallShield, but has no idea how to make that happen in Advanced Installer.
As you probably know Advanced Installer generates the msi files, but you have to specify each file as being shared in the tool (same as in Installshield).
You *probably* need to tell the installer via some other mechanism (i.e. write a program script) to mark a bunch of files as shared.  
But that would be specific to the tool, so not sure we can help.

- Seth

On Friday, March 19, 2021 at 11:11:15 AM UTC-4 [hidden email] wrote:
Hi All,

This may be more of a Windows question than a Smalltalk question but since I want to do it with Smalltalk, I'm asking here.

I have more than one program that shares the distributed DLLs and time zone files.  I use Advanced Installer, it's like Install Shield but less expensive.  They make .msi files and can tell Windows that a files is shared between programs so the files isn't removed until the last program that uses it is uninstalled.  My problem is that with Advanced Installer I have to indicate a file is shared one at a time and there are a lot of time zone files.

Does anyone know how to tell Windows a file is shared in this way?  Hopefully it is with some kind of Windows call passing the file name and path.

Lou

--
You received this message because you are subscribed to the Google Groups "VAST Community Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/11f5baa2-7495-4504-af2d-0bf3f6a5a1d7n%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Windows installer (.msi) files shared by programs

Bob Brodd
Hi Lou,
While the VAST installers do not use the shared files feature of Installshield, I did just take a look to see if more than just individual files can be shared.  It looks like a folder can be shared as well, as long as you specify one of the enclosed files as being the 'key' file.  The notes indicate that any file in the folder (component) would also have its reference count incremented during installation.  Maybe Advanced Installer has the capability to designate folders with a component code as shared and also select the 'key' file?
Bob

On Friday, March 19, 2021 at 11:38:49 AM UTC-4 Seth Berman wrote:
Hi Lou,

The engineer that builds our product installers knows how to do that in InstallShield, but has no idea how to make that happen in Advanced Installer.
As you probably know Advanced Installer generates the msi files, but you have to specify each file as being shared in the tool (same as in Installshield).
You *probably* need to tell the installer via some other mechanism (i.e. write a program script) to mark a bunch of files as shared.  
But that would be specific to the tool, so not sure we can help.

- Seth

On Friday, March 19, 2021 at 11:11:15 AM UTC-4 [hidden email] wrote:
Hi All,

This may be more of a Windows question than a Smalltalk question but since I want to do it with Smalltalk, I'm asking here.

I have more than one program that shares the distributed DLLs and time zone files.  I use Advanced Installer, it's like Install Shield but less expensive.  They make .msi files and can tell Windows that a files is shared between programs so the files isn't removed until the last program that uses it is uninstalled.  My problem is that with Advanced Installer I have to indicate a file is shared one at a time and there are a lot of time zone files.

Does anyone know how to tell Windows a file is shared in this way?  Hopefully it is with some kind of Windows call passing the file name and path.

Lou

--
You received this message because you are subscribed to the Google Groups "VAST Community Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/13dbd6ea-dc8f-4b7f-8523-e3b5285e81cdn%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Windows installer (.msi) files shared by programs

Louis LaBrunda
Hi Guys,

I know how to do it with both.  I no longer use Install Shield and use Advanced Installer now.  If I remember correctly Install Shield did allow you to set the indicator for multiple selected files at once.  Advanced Installer doesn't.  I want to avoid setting the indicator for each and every file.

What I am thinking is the first time the program is run, tell Windows all the files that are "shared".  This has to be something the Windows installer does.  Install Shield and Advanced Installer build .msi installs with the files to install and the share indicator.  The windows installer must take the indicator and tell windows about it somehow.  I just don't know how that's done.  If I can reproduce that, I can avoid the problem with Advanced Installer.

Lou
On Friday, March 19, 2021 at 11:54:09 AM UTC-4 Bob Brodd wrote:
Hi Lou,
While the VAST installers do not use the shared files feature of Installshield, I did just take a look to see if more than just individual files can be shared.  It looks like a folder can be shared as well, as long as you specify one of the enclosed files as being the 'key' file.  The notes indicate that any file in the folder (component) would also have its reference count incremented during installation.  Maybe Advanced Installer has the capability to designate folders with a component code as shared and also select the 'key' file?
Bob

On Friday, March 19, 2021 at 11:38:49 AM UTC-4 Seth Berman wrote:
Hi Lou,

The engineer that builds our product installers knows how to do that in InstallShield, but has no idea how to make that happen in Advanced Installer.
As you probably know Advanced Installer generates the msi files, but you have to specify each file as being shared in the tool (same as in Installshield).
You *probably* need to tell the installer via some other mechanism (i.e. write a program script) to mark a bunch of files as shared.  
But that would be specific to the tool, so not sure we can help.

- Seth

On Friday, March 19, 2021 at 11:11:15 AM UTC-4 [hidden email] wrote:
Hi All,

This may be more of a Windows question than a Smalltalk question but since I want to do it with Smalltalk, I'm asking here.

I have more than one program that shares the distributed DLLs and time zone files.  I use Advanced Installer, it's like Install Shield but less expensive.  They make .msi files and can tell Windows that a files is shared between programs so the files isn't removed until the last program that uses it is uninstalled.  My problem is that with Advanced Installer I have to indicate a file is shared one at a time and there are a lot of time zone files.

Does anyone know how to tell Windows a file is shared in this way?  Hopefully it is with some kind of Windows call passing the file name and path.

Lou

--
You received this message because you are subscribed to the Google Groups "VAST Community Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/2d9b9691-b5cd-4159-aeb0-0edfb4cf7d74n%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Windows installer (.msi) files shared by programs

Louis LaBrunda
Hi,

Well, leave it to Microsoft to make things more complicated than necessary.  Somewhere along the line they changed things to use what I think are called components.  Components can hold more then one file.  But many developers put only one file in a component because if the contents of a component are different between products, that can confuse things.

I can't figure out how to make a component, so I'm giving up on this idea.  I guess there is some Microsoft development system that would help but that's not for me.

I have manually done what is needed in Advanced Installer and will copy that install for new installs but that has its pitfalls, so I will need to be very careful.

Thanks for the thoughts guys.

Lou

On Friday, March 19, 2021 at 1:30:23 PM UTC-4 Louis LaBrunda wrote:
Hi Guys,

I know how to do it with both.  I no longer use Install Shield and use Advanced Installer now.  If I remember correctly Install Shield did allow you to set the indicator for multiple selected files at once.  Advanced Installer doesn't.  I want to avoid setting the indicator for each and every file.

What I am thinking is the first time the program is run, tell Windows all the files that are "shared".  This has to be something the Windows installer does.  Install Shield and Advanced Installer build .msi installs with the files to install and the share indicator.  The windows installer must take the indicator and tell windows about it somehow.  I just don't know how that's done.  If I can reproduce that, I can avoid the problem with Advanced Installer.

Lou
On Friday, March 19, 2021 at 11:54:09 AM UTC-4 Bob Brodd wrote:
Hi Lou,
While the VAST installers do not use the shared files feature of Installshield, I did just take a look to see if more than just individual files can be shared.  It looks like a folder can be shared as well, as long as you specify one of the enclosed files as being the 'key' file.  The notes indicate that any file in the folder (component) would also have its reference count incremented during installation.  Maybe Advanced Installer has the capability to designate folders with a component code as shared and also select the 'key' file?
Bob

On Friday, March 19, 2021 at 11:38:49 AM UTC-4 Seth Berman wrote:
Hi Lou,

The engineer that builds our product installers knows how to do that in InstallShield, but has no idea how to make that happen in Advanced Installer.
As you probably know Advanced Installer generates the msi files, but you have to specify each file as being shared in the tool (same as in Installshield).
You *probably* need to tell the installer via some other mechanism (i.e. write a program script) to mark a bunch of files as shared.  
But that would be specific to the tool, so not sure we can help.

- Seth

On Friday, March 19, 2021 at 11:11:15 AM UTC-4 [hidden email] wrote:
Hi All,

This may be more of a Windows question than a Smalltalk question but since I want to do it with Smalltalk, I'm asking here.

I have more than one program that shares the distributed DLLs and time zone files.  I use Advanced Installer, it's like Install Shield but less expensive.  They make .msi files and can tell Windows that a files is shared between programs so the files isn't removed until the last program that uses it is uninstalled.  My problem is that with Advanced Installer I have to indicate a file is shared one at a time and there are a lot of time zone files.

Does anyone know how to tell Windows a file is shared in this way?  Hopefully it is with some kind of Windows call passing the file name and path.

Lou

--
You received this message because you are subscribed to the Google Groups "VAST Community Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/a6104fdc-0b2a-4324-a818-4668110df0dan%40googlegroups.com.