PRB: Shell Statement May Not Return Task Handle Immediately

ID: Q147671


The information in this article applies to:
  • Microsoft Visual Basic Professional and Enterprise Editions, 16-bit only, for Windows, version 4.0


SYMPTOMS

The Shell function returns a task handle to the application it starts. On slow machines, it has been reported that the task handle may not be returned immediately. This can cause problems if the code immediately after the call to the Shell function assumes that the variable used to hold the return value will be valid. The code will work fine when it is stepped through in the design environment if the pause between steps is of sufficient length to allow the handle to be returned and the value of the variable to be valid.


WORKAROUND

To work around this problem, simply wait until the task handle is returned to the variable used to hold the Shell function's return value. This can be accomplished with a few lines of code, like this:


   x = 0
   x = Shell("MY.exe")
   Do While x = 0
      DoEvents
   Loop 

Additional query words: 4.00 vb4win vb416

Keywords : PrgOther
Version : 4.00 | 4.00
Platform : NT WINDOWS
Issue type :


Last Reviewed: June 16, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.