2

We are using Visual Studio 2010 and .NET 4. We have build a setup project using the standard tools within VB .NET, but now we have a requirement which means we must force the user to scroll to the bottom of the license agreement before they can click on "I agree". We did find a C++ project solution online using ORCA I believe, but that was not performing as expected, it was too slow and scrolling was rendering the text un-readable. Any help would be truly appreciated.

This is how we are adding the license agreement dialog to the setup project:

How to add Licence agreement in the setup project

But we are not sure how we can add custom logic to handle scroll-bar. We possibly need a custom license dialog or an external open source application which offers this facility.

Community
  • 1
  • 1
pipalia
  • 911
  • 1
  • 12
  • 46
  • Do you realize that people won't read it anyway and just scroll down all the way while being annoyed? – ThiefMaster Dec 07 '13 at 16:27
  • ofcourse, everybody understands that, but this was a very specific customer requirement, so there was nothing we could do. – pipalia Dec 08 '13 at 18:23

3 Answers3

5

You should really consider switching to a different setup builder solution.

Even Microsoft has discontinued its support for its Installer solution in Visual Studio 2012 (and all future versions).

I highly recommend Inno Setup because of its flexibility and power.

Actually, doing a quick search I found a way of doing exactly what you are looking for, right here at StackOverflow: wpLicese Page check if ScrollBars position is max (Inno Setup)

Community
  • 1
  • 1
xfx
  • 1,329
  • 8
  • 18
2

For the same problem I've switched to SharpSetup. This is a wrapper around MSI installer and it have Installer GUI windows created in .NET. You can just use the available SharpSetup LicenseStep window and change it to your needs.

Marcinu
  • 85
  • 10
1

Well, I think I did it! It's a rather cumbersome solution but it definitely works...

You can test it yourself by downloading this "dummy" setup: MySetup

Here's how it works: The MySetup is actually an application written in VB.NET which includes the actual MSI setup file as a resource.

When you start MySetup it launches the actual setup and then starts a monitoring threaded looking for the RichTextBox control and continually tests the position of the scrollbar's thumb.

Then, based on that value (and weather the "I Agree" radio button is selected) it enables or disables the "Next" button.

If you wish, you can download the source code here: LAChecker/MySetup

Hope this helps...

xfx
  • 1,329
  • 8
  • 18