mstatus (Signed Num, out, optional) returns a code indicating the result of the operation:
Value |
Meaning |
0 |
OK, or for opcode 2 indicates item was previously enabled |
1 |
OK, or for opcode 2 indicates item was previously disabled |
-1 |
Add or delete menu function failed |
-2 |
Menu (mnutxt) not found during change or delete operation |
-3 |
Out of memory (unable to allocate menu storage buffers) |
-4 |
Exceeded maximum number of added menu items (currently 125) |
-5 |
No menu buffer allocated |
-6 |
Illegal opcode |
-7 |
Menu (mnutxt) already exists |
-8 |
Menuid not found |
-15 |
ATE failed to respond to the server request within the normal time limit |
If the mstatus parameter is omitted, or passed as a null string (if mapped, must be S,1), then no status will be returned. This will provide a speed improvement when setting up a lot of menu items (particularly over ATE), and is recommended especially if you aren't even bothering to check the returned status value anyway.
The normal time limit for a response from ATE is five seconds for most commands, ten to fifteen seconds for a few. Sometimes commands that "should" respond almost instantly will take a long time, either because ATE is "locked up", or there is some other Windows hang-up, such as waiting on "elevation" or some other critical event. In such cases, we return -15 to indicate time out.