I launch my main application with the Start() method.
It is sucessfull most of the time.
It takes about 30 seconds for the app to launch
However, if there is a config file not present, A Java Dialog Message Box with caption = "Information" will pop up after 2 seconds. The user must click OK
and then the application will continue on and launch.
How can I get the Start() method to automatically dismiss this dialog if it pops up? I tried using a multitag statement in the main window declaration:
[-] multitag "Administrator"
[ ] "Information"
But this did not work.
So the way things are now, if the Info Box comes up , the Start () waits for the 30 second timeout and fails, since the caption
for the main window has never been found due to the fact that the information dialog is
on the screen waiting to be dismissed.
Define the "extra" window as normal. Then overide the invoke method for the mainwindow with a while loop. The control for the loop will be if the window exists and then sleep for some time. If you window is found, then click the OK button.
while !InfoWin.Exists() | | MainWin.Exist()
In response to your last question about launching an .exe. because you app is built with Java you can't use then .exe. If you do use the .exe then you will be able to see the javaMainWin and JavaDialogBox controls but you won't be able to see any of the controls on those windows. This is a Java issue.
Have you considered configuring the SilkTest recovery system so you can use DefaultBaseState or your own BaseState? It's not necessarily an easy or quick thing for a beginner to do on their own. But it is well worth the effort in the long run - (1) to have the recovery system configured and (2) for your learning of the powers of SilkTest.