Script Center > Scripting Forums > The Official Scripting Guys Forum! > how could i dismiss a dialog--vbscript
Ask a questionAsk a question
 

Questionhow could i dismiss a dialog--vbscript

  • Friday, November 06, 2009 5:04 AMhydn Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
      As i have an application, but it always pop up a diaglog show me "The filename, directory name, or volume label syntax  is incorrect." now, i wonder:
    1.  if have some method know why this diaglog happen, if there is a program to detect
    2.  if could write a .vbs to automate dimiss the dialog so that my program could be smooth. could anyone give an example..

    --hayden

All Replies

  • Friday, November 06, 2009 3:18 PMKarl Mitschke Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    If you wrote the application, fix it so it isn't looking for an incorrect file ;)

    If you didn't writhe the program, as the program's provider what it is looking for.

    If the program is looking for a file, folder, or volume that is missing, and your idea of a "fix" is to provide a script to dismiss the dialog box, I'd suggest that yiu just remove the program - it can't be too important to you.

    Karl
  • Saturday, November 07, 2009 6:01 AMhydn Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    thanks for your reply Karl
      its important to me really. in fact i don't know what cause this error dialog. maybe its a systemic problem. anyway, i wanna get a script to dismiss the dialog box, if vbs could make it true?

    -hayden
  • Saturday, November 07, 2009 3:21 PMTom Lavedas Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    If you are determined to do it that way, the Sendkeys method can do it.  I think it would be best to wrap a script around the launch of your application to handle this, something like this ...

      with createobject("wscript,shell")
        .run "pathspec\to\yourapp.exe", 1, false
        do until .appacativate("titleof App Window"): wsh.sleep 50 : loop
        if .appactivate("title of dialog window") then .sendkeys "{enter}"
      end with


    Tom Lavedas
  • Sunday, November 08, 2009 1:06 AMhydn Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Thanks Tom
       in fact, i've tried as this before, but ENTER key can't dismiss the dialog box, only click mouse to dismiss. And if could hook the message "ERROR_INVALID_NAME" to dismiss the dialog box? and how to do it?cuz i run so many same App. at the same time..
  • Sunday, November 08, 2009 8:08 PMTom Lavedas Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Are you absolutely sure that the dialog can only be dismissed with a mouse-click.  I find that highly unlikely.  I'll accept that the Enter key doesn't work, but maybe the spacebar or another key will work.  What exactly does the button say that is used to dismiss the dialog?  OK?  Cancel?  Try the first letter of that word. If there is an underlined letter, use it.

    To 'hook the message "ERROR_INVALID_NAME"', change the title in the second AppActivate box to that string ...

      if .appactivate("ERROR_INVALID_NAME") then .sendkeys " "

    However, if the dialog must use a mouse-click, it cannot be done without a third party control, such as AutoItX (use a google search to find it).  I don't use it now (though I have in the past), so I can't give you an example, but I know it has that functionality.
    Tom Lavedas
  • Monday, November 09, 2009 1:53 AMhydn Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Thanks Tom
      are you sure if [ .appactivate("ERROR_INVALID_NAME") then .sendkeys " " ] will work? i think appactivate just work for message TITLE, its not work for error handler, am i right?

    http://windows.errorpro.com/windowserror.php?ecode=ERROR_INVALID_NAME&descr=MS%20WINDOWS%20OS%20ERRORS
  • Monday, November 09, 2009 3:34 AMTom Lavedas Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    If it is a runtime error that is unhandled, I don't see how dismissing it can help.  Doesn't the application exit when the error dialog is dismissed?

    I don't think I really understand what your real problem is and therefore doubt I can be of particular help here.

    Tom Lavedas
  • Monday, November 09, 2009 5:20 AMhydn Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Thank you, Tom.
        the application won't exit after dismiss the error dialog, so i want to write a script to auto-dismiss the box. BUT, now i don't think this "fix" idea is a good idea...
      anyway, you provide me help.Thanks again..