System.Windows.Forms.AllScreens works correctly in Debug mode but not in normal Run mode


I’m working on a requirement in which the end users want the Automation to detect if the current machine is connected to multiple displays and if so, stop for user input before proceeding further.

Now, the issue is if the user clicks OK without switching to a single display, it results in an ambiguous situation. As a solution, the automation checks to see if the user has switched to a single screen by checking the System.Windows.Forms.AllScreens.Length and if the value returned is > 1 then the automation overrides the users choice of the OK button and stops running. Please see flow attached.

Seq-Detect-Displays.xaml (11.9 KB)

The problem:
This logic works as expected in Debug mode. However, if I run the process when in dual-display mode, and then switch to a single screen when the dialog prompt shows up, the automation is unable to detect the fact that I have a single display and stops the process! :neutral_face:

The User Action Dialog Prompt:

Works as expected when Flow is run in Debug mode with Breakpoint applied:

Results in Run Mode. This is incorrect, as I have switched to single screen mode:

This is the code in question:

Package Stack:

Hello @AndyMenon!

It seems that you have trouble getting an answer to your question in the first 24 hours.
Let us give you a few hints and helpful links.

First, make sure you browsed through our Forum FAQ Beginner’s Guide. It will teach you what should be included in your topic.

You can check out some of our resources directly, see below:

  1. Always search first. It is the best way to quickly find your answer. Check out the image icon for that.
    Clicking the options button will let you set more specific topic search filters, i.e. only the ones with a solution.

  2. Topic that contains most common solutions with example project files can be found here.

  3. Read our official documentation where you can find a lot of information and instructions about each of our products:

  4. Watch the videos on our official YouTube channel for more visual tutorials.

  5. Meet us and our users on our Community Slack and ask your question there.

Hopefully this will let you easily find the solution/information you need. Once you have it, we would be happy if you could share your findings here and mark it as a solution. This will help other users find it in the future.

Thank you for helping us build our UiPath Community!

Cheers from your friendly