cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
tejasD
Level 3

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
Labels (1)
0 Kudos
(3) Replies
chad_petersen
Level 9

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
0 Kudos
tejasD
Level 3

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.
0 Kudos
chad_petersen
Level 9

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

0 Kudos