Batch - script calling script

I have a puzzling problem:

I have a script that when I click in a button, it runs another .ps1 script. In Powershell ISE it works perfectly, but when I start from a Batch Script it not work, not start the second script.
The event:

Register-ObjectEvent $call_x1 Click click_event -Action {
Invoke-Expression “E:\Tests\x1.ps1”

I use forms.

In Powershell ise works. But when I run through the batch does not work.
Test the following situation:

batch file starts “script1.ps1”

script1.ps1 start an event that calls script2.ps1.

the script2.ps1 not run.

But if we start the script1.ps1 through Powershell ISE, the event that calls script2.ps1 works perfectly.