This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Few Queries
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 26, 2016
10:41 PM
Few Queries
Hi,
I am using Installshield 2016. I am developing an installer which Installscript and MSI. queries as follows
1. I have used sdshowedit3 in install script which accept input as IPAddress, How to validate the input?
2. I have used startcopy2 in installscript, when user click on install I want to disable back button, install button and cancel button, how to achieve this?
3. During uninstallation, A window comes with modify, repair and remove options, I donot want to show this window how to achieve this?
Please guide.
Regards,
TejasD
I am using Installshield 2016. I am developing an installer which Installscript and MSI. queries as follows
1. I have used sdshowedit3 in install script which accept input as IPAddress, How to validate the input?
2. I have used startcopy2 in installscript, when user click on install I want to disable back button, install button and cancel button, how to achieve this?
3. During uninstallation, A window comes with modify, repair and remove options, I donot want to show this window how to achieve this?
Please guide.
Regards,
TejasD
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jan 04, 2017
10:12 AM
I would personally guide you toward a different project type.
Among the three types of projects.
InstallScript-only
InstallScript MSI
Basic MSI
I can only recommend the last type these days. You can still use the InstallScript language with a Basic MSI project, although slightly differently. I think many people do not realize this.
However, instead of using InstallScript language at all, which locks you into InstallShield subscriptions and licensing forever - these days I write most of my Custom Actions in C# DTF so that they are portable to various MSI authoring tools.
1. IP Addresses are hard to validate. If you only want to validate that the data entered "could be" an IP Address then a Custom Action that runs a RegEx check of the string would be one possibility. If you actually want to make sure that the IP Address entered is valid on the attached network then that is another level of validation.
2. You get this functionality if you use a "Basic MSI" project type. I'm not sure why they called it "Basic MSI" since it is not Basic at all. It is Microsoft MSI that you are authoring to.
3. In Basic MSI this is part of the dialog sequence and you can control that, skipping over any dialog in the sequence.
I find Basic MSI gives me the full transacted install like modern projects should use and by calling C# DTF custom actions I can accomplish anything that MSI does not do natively, using managed code. It works VERY well.
I hope this at least helps draw attention to the alternatives.
Chad
Among the three types of projects.
InstallScript-only
InstallScript MSI
Basic MSI
I can only recommend the last type these days. You can still use the InstallScript language with a Basic MSI project, although slightly differently. I think many people do not realize this.
However, instead of using InstallScript language at all, which locks you into InstallShield subscriptions and licensing forever - these days I write most of my Custom Actions in C# DTF so that they are portable to various MSI authoring tools.
1. IP Addresses are hard to validate. If you only want to validate that the data entered "could be" an IP Address then a Custom Action that runs a RegEx check of the string would be one possibility. If you actually want to make sure that the IP Address entered is valid on the attached network then that is another level of validation.
2. You get this functionality if you use a "Basic MSI" project type. I'm not sure why they called it "Basic MSI" since it is not Basic at all. It is Microsoft MSI that you are authoring to.
3. In Basic MSI this is part of the dialog sequence and you can control that, skipping over any dialog in the sequence.
I find Basic MSI gives me the full transacted install like modern projects should use and by calling C# DTF custom actions I can accomplish anything that MSI does not do natively, using managed code. It works VERY well.
I hope this at least helps draw attention to the alternatives.
Chad
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jan 05, 2017
03:22 AM
Thank you Chad.
I have used sdshowedit1 dialog. I have variable that store user input say IP Address. Now how to validate this variable using Custom Action RegEx and writing/calling C# DTF custom actions?
I tried to search what is custom Action and C# DTF but did not get anything how begin or go ahead.
Can you provide more steps/details or sample demo? Please guide.
Thanks.
I have used sdshowedit1 dialog. I have variable that store user input say IP Address. Now how to validate this variable using Custom Action RegEx and writing/calling C# DTF custom actions?
I tried to search what is custom Action and C# DTF but did not get anything how begin or go ahead.
Can you provide more steps/details or sample demo? Please guide.
Thanks.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jan 05, 2017
09:33 AM
Here's info on a RegEx to validate IP Addresses
http://stackoverflow.com/questions/106179/regular-expression-to-match-dns-hostname-or-ip-address
Custom Actions are an advanced topic. In your case you will call the Custom Action on the Next button click of your dialog in a DoAction event.
You can read about C# DTF custom actions here.
http://blog.iswix.com/2008/05/deployment-tools-foundation-dtf-managed.html
You would need Visual Studio and WiX to be able to write the C# DTF Managed Custom Actions.
If you are not familiar with C# then this might not be the approach to take.
Chad