This response was given by the Forum ChatBot, So I’m pretty sure it’ll be accurate for this question:
Regarding information transfer to the Catch block:
In UiPath, when an exception occurs within the Try block, the runtime creates an exception object. This exception object is not “transferred” via variables or regular arguments; rather, it is caught automatically by the Catch block and made available through the designated exception parameter. Any variables from the Try block do not inherently pass their state to the Catch block unless they are declared in a broader scope. Summary: Yes, it is correct that the exception details are not passed through variables or arguments from the Try block to the Catch block. They are automatically encapsulated in the exception object made available in Catch.
2.Regarding the need for an explicit Throw activity:
When an exception occurs in the Try block due to an error (for example, a runtime error) the exception is automatically thrown by the system—it does not require a Throw activity inside the Try block. The Throw activity is used when you need to explicitly raise an exception (for custom error handling or rethrowing after catching an exception), but if an error naturally occurs, UiPath will trigger the exception and transfer control to the Catch block even if there isn’t an explicit Throw activity. Summary: Yes, it is correct that an exception is thrown automatically when it occurs in the Try block, even without a Throw activity.