home *** CD-ROM | disk | FTP | other *** search
/ The Devil's Doorknob BBS Capture (1996-2003) / devilsdoorknobbbscapture1996-2003.iso / Dloads / WINDOWSU / UNICOM.ZIP / UCSCRIPT.HLP < prev    next >
Text File  |  1990-08-05  |  27KB  |  843 lines

  1.  
  2.  
  3. & "Introduction"
  4.  
  5. A script file is a text file constructed by you containing 
  6. commands that UNICOM will execute.  Script files are useful 
  7. in automating manual tasks such as dialing, logging in, 
  8. initiating file transfers, hanging up and so on.  
  9.  
  10. Instead of manually entering commands to UNICOM and to a host 
  11. computer, complex tasks may be performed automatically with 
  12. the execution of a single script file. 
  13.  
  14. Consider the following script language commands: 
  15.  
  16. WHILE NOT CONNECTED        ; This step will repeat dial until 
  17.   DIAL "555-6666"          ; the remote computer answers 
  18. ENDWHILE 
  19.  
  20. WAITFOR "Password:"        ; We wait for the password prompt 
  21. SEND "your password"       ; then send it to the remote  
  22.  
  23. WAITFOR "command prompt"   ; Wait until we are prompted 
  24. SEND "download command"    ; then issue a download command 
  25.  
  26. GETFILE protocol "received.dat"  ; retrieve a file  
  27.  
  28. WAITFOR "command prompt"   ; Again, wait until we are 
  29.                              prompted 
  30. SEND "logoff command"      ; then logout 
  31. HANGUP                     ; Tell UNICOM to hangup, we're 
  32.                                                     done 
  33.   
  34. This example illustrates how a script language file can be 
  35. used to automate the manual tasks of dialing, transferring 
  36. data and disconnecting the phone line.   
  37.  
  38. A script file may also be constructed to make decisions 
  39. based on information or events encountered during execution. 
  40.  
  41. The following example illustrates conditional branching: 
  42.  
  43.    Message "Do you Wish to Quit?" "?" yesno 
  44.    IF yes 
  45.      QUIT         ; exit UNICOM if User presses the yes 
  46. button 
  47.    ELSE 
  48.      . 
  49.      .  <-------- IF No, These steps are performed  
  50.      . 
  51.    ENDIF 
  52.  
  53.       
  54. The example above will display a message within a windows 
  55. message box that contains two buttons: yes and no.   
  56. If the user presses the yes button, a predefined conditional 
  57. variable named 'yes' will become true.  The IF statement is 
  58. used within the script language to test the value and branch 
  59. accordingly. 
  60.  
  61. UNICOM supports other statements that can be used for 
  62. conditional branching.  See the WHILE and SWITCH statements 
  63. in the Script Command Language Definition section. 
  64.   
  65. Additional, more powerful script language applications may 
  66. be developed beyond the examples discussed so far.  UNICOM 
  67. provides a rich and powerful set of commands that can be 
  68. used to solve very complex tasks. 
  69.  
  70. UNICOM script statements and commands span the following 
  71. categories: 
  72.  
  73.  1) Script Execution Control:  
  74.     IF, WHILE, SWITCH, CASE, EXIT, EXECUTE, TRACE 
  75.  
  76.  2) File Control: 
  77.     CHDIR, LOG 
  78.  
  79.  3) Query Functions: 
  80.     FINDWINDOW, FINDFILE, FIND  
  81.  
  82.  3) Program Settings: 
  83.     PORT, EMULATE, ASSIGN 
  84.  
  85.  4) Port Interaction and Control: 
  86.     BREAK, FLUSH, WAITFOR, SEND 
  87.  
  88.  5) User Interaction: 
  89.     ALARM, MESSAGE, INPUTSTRING, DISPLAYSTRING 
  90.  
  91.  6) Action Processing: 
  92.     DIAL, HANGUP, GETFILE, SENDFILE, DELAY, SNAPSHOT 
  93.   
  94.  7) Process and Window Control: 
  95.     KILLWINDOW, SHOWWINDOW, MOVEWINDOW, TITLEWINDOW, RUN, CLEAR 
  96.  
  97.  
  98.  
  99. & "Script Language Syntax" 
  100.  
  101. All script commands are case insensitive.  String variables 
  102. may be substituted for all commands that specify an immediate 
  103. string parameter.  For example: 
  104. Send "Hello" 
  105.  
  106. Will instruct UNICOM to transmit the same string as in the 
  107. following case: 
  108. Assign s1 "Hello" 
  109. Send s1 
  110.  
  111. UNICOM script command statements may be written using UPPER 
  112. and/or lower case. 
  113.  
  114. Blank spaces must delimit command arguments.  Double quote 
  115. characters can be used to enclose a string argument 
  116. containing spaces as shown in the example below. 
  117.  
  118. ASSIGN arg1 "This quoted string is one argument" 
  119.  
  120. Only one script command is allowed per line.  Lines are 
  121. limited to 80 characters in length.  Command arguments cannot 
  122. wrap around to the next line. 
  123.  
  124. & "Editing and Creating Script Files" 
  125.  
  126. Your personal text editor may be activated from UNICOM when 
  127. editing or creating script language files.  Before using this 
  128. feature, the complete editor pathname must be stored in the 
  129. script editor field located within the general setup window. 
  130.  
  131. To open a script file for editing, select the edit command 
  132. from the script menu.  A file selection window will appear 
  133. displaying all files found in the UNICOM directory with a 
  134. .SCR extension. 
  135.  
  136.  
  137. & "Executing Script Command Files" 
  138.  
  139. Script files may be executed at any time when in terminal 
  140. mode.  To activate a script file, select EXECUTE from the 
  141. script menu.  A file selection window will appear displaying 
  142. all files found containing a .SCR extension in the UNICOM 
  143. files directory. 
  144.  
  145. Once invoked, a script file will execute until an EXIT 
  146. statement is encountered.  Script execution may be 
  147. interrupted at any time by pressing the ESC key.   
  148.  
  149. During script execution, the UNICOM keyboard remains enabled 
  150. for user interaction.   
  151.  
  152. & "Tracing Script Execution" 
  153.  
  154. Script file commands may be echoed to your screen as they are 
  155. executed.  To enable this feature, select the TRACE menu 
  156. toggle from the script menu.  Each command will be echoed 
  157. line by line starting at the top of the terminal screen.  
  158. After reaching the bottom of the terminal screen buffer, 
  159. additional echoed commands will cause the terminal to scroll. 
  160.  
  161. Tracing is useful for observing the behavior of a script file 
  162. during execution.  Tracing may be enabled or disabled via 
  163. script command or through a menu selection.      
  164.  
  165.  
  166. & Alarm
  167.  
  168. ALARM [seconds] 
  169.  
  170. The ALARM command will alert the user to an event by ringing 
  171. the speaker bell.  The [seconds] parameter determines the 
  172. amount of time the alarm will sound.  If the [seconds] 
  173. parameter is omitted, the alarm will sound for 1 second. 
  174.  
  175. Returns: nothing 
  176. Example:  ALARM 4        (Sounds and alarm for 4 seconds) 
  177.  
  178. & Assign
  179.  
  180. ASSIGN variable "string" 
  181.  
  182. This command assigns the value of "string" to a user defined 
  183. variable.  To set a user variable from within your command 
  184. file, use the ASSIGN command. 
  185.  
  186. Returns: nothing 
  187. Examples: ASSIGN MyVar "Hello World" 
  188.           ASSIGN V3 MyVar 
  189.  
  190. & Break
  191.  
  192. BREAK [time] 
  193.  
  194. The BREAK command will place the communication line into a 
  195. break state. The optional [time] argument determines the 
  196. length of the break in milliseconds.  If [time] is not 
  197. specified, UNICOM will default to 350 milliseconds.   
  198.  
  199. Returns: nothing 
  200. Examples: BREAK          (sends a 350 msec break) 
  201.           BREAK 250      (sends a 250 msec break) 
  202.  
  203.  
  204. & Chdir
  205.  
  206. CHDIR "drive:directory" 
  207.  
  208. The CHDIR command will change the default drive and/or 
  209. directory to that specified in the argument string. 
  210.  
  211. Returns: SUCCESS 
  212. Examples: CHDIR "D:"          ( sets the drive to D:) 
  213.           CHDIR "C:\WINDOWS"  ( default to drive c:\windows) 
  214.           CHDIR "\Win"        ( default to directory \Win)    
  215.  
  216. & Clear
  217.  
  218. CLEAR 
  219.  
  220. CLEAR will erase the contents of the current terminal display.  
  221. The scrollback buffer is not affected.  If operating in color 
  222. mode, the screen will be set to the currently selected 
  223. background color.   
  224.  
  225. Returns: nothing  
  226. Example:  CLEAR     (erases the terminal screen) 
  227.  
  228. & Delay
  229.  
  230. DELAY [milliseconds] 
  231.  
  232. This command will pause script execution for the specified 
  233. number of milliseconds.  Data arriving from the 
  234. communications port is buffered during this delay.  The 
  235. amount to delay should not exceed the time necessary to fill 
  236. 4K at the current baud rate. 
  237.  
  238. UNICOM will default to a 1 second delay if the time argument 
  239. is omitted. 
  240.  
  241. Returns: nothing 
  242. Example:  DELAY 5000     (pauses the script 5 seconds) 
  243.  
  244. & Dial
  245.  
  246. DIAL  "phone number" 
  247.  
  248. The DIAL command will instruct the modem to dial the number 
  249. specified in the argument string.  The string is prefixed 
  250. with  a Hayes dialing command.  Use the IF [NOT] CONNECTED 
  251. command obtain the success or failure of this command. 
  252.  
  253. Returns: CONNECTED                      
  254. Example:  DIAL "555-1212"  (causes ATE1D*555-1212 to be sent to the 
  255. modem) 
  256.                            * = T or P as defined in modem setup.
  257.  
  258. & DisplayString
  259.  
  260. DISPLAYSTRING row column "string" 
  261.  
  262. This command will place an argument string at the specified 
  263. row and column on the terminal screen.  The row values may 
  264. range from 0 to 23.  The column values may range from 0 to 
  265. 79.  If the row and column arguments are omitted, 
  266. DISPLAYSTRING will default to row 0 and column 0.  The 
  267. current terminal cursor position is not affected. 
  268.  
  269. Returns: nothing 
  270. Example: DISPLAYSTRING 4 6 "Hello" (places Hello at row 4 column 6 
  271.  
  272. & Emulate
  273.  
  274. EMULATE [ansi|vt52|tty|color] 
  275.  
  276. This command sets UNICOM to operate using the specified 
  277. terminal emulation.  If no argument is provided, UNICOM will 
  278. default to ANSI Color Emulation.  
  279.  
  280. Returns: nothing 
  281. Example:  EMULATE ansi (sets UNICOM to B&W ANSI Emulation) 
  282.  
  283. & Execute
  284.  
  285. EXECUTE "cmd file" 
  286.  
  287. The EXECUTE command allows you to begin execution of a 
  288. different script file.  The currently executing script file 
  289. is interrupted  and control does not return.  This command 
  290. is a one-way chain to another script command file.  The 
  291. complete file specification must be provided in the 
  292. argument.  String variables are not reset when chaining to 
  293. different script files and may be used by the called file. 
  294.  
  295. Returns: nothing 
  296. Examples: EXECUTE "login.scr"  (execute file login.scr) 
  297.           INPUTSTRING  FileName "Enter the File to Execute" 
  298.           EXECUTE FileName 
  299.  
  300. & Exit
  301.  
  302. EXIT 
  303.  
  304. The EXIT command terminates the executing script file and 
  305. returns UNICOM to Terminal Mode operation. 
  306.  
  307. Returns: nothing 
  308. Examples: SEND "Terminating Session" (disconnect host) 
  309.           HANGUP                     (hangup modem   ) 
  310.           EXIT                       (enter Terminal Mode) 
  311.  
  312. & Find 
  313.  
  314. FIND VarName "Target" 
  315.  
  316. The FIND command examines the specified variable for an 
  317. occurrence of the "target" string.  The result of this command 
  318. can be obtained using the IF FOUND command.  The FIND command IS 
  319. CASE SENSITIVE. 
  320.  
  321. Returns: FOUND 
  322. Examples: INPUTSTRING S1 "Enter a Password"  (get response) 
  323.           FIND S0 "password"                 (search for 
  324. password) 
  325.           IF NOT FOUND 
  326.              MESSAGE "Invalid password" "ERROR" 
  327.           ELSE 
  328.              EXECUTE "other.scr" 
  329.           ENDIF 
  330.  
  331.  
  332. & FindFile
  333.   
  334. FINDFILE "filename" 
  335.  
  336. The FINDFILE command is used to determine if a specific file 
  337. exists in the directory path specified in the DOS PATH 
  338. environment variable.  The IF [NOT] FOUND command should be 
  339. used to test the result of this command.  
  340.  
  341. Returns: FOUND 
  342. Example: FINDFILE "unicom.exe" 
  343.          IF FOUND 
  344.            MESSAGE "Unicom was Found" "Attention"  
  345.          ELSE 
  346.            MESSAGE "Unicom Exists" "Found It!" 
  347.          ENDIF  
  348.  
  349. & FindWindow
  350.  
  351. FINDWINDOW "targetwindowtitle" 
  352.  
  353. The FINDWINDOW command is useful for testing for the 
  354. existence of any window.  The argument string must specify 
  355. the title appearing in the target Window.    
  356.  
  357. Returns: FOUND 
  358. Example: FINDWINDOW "Clock"   (look for the clock application) 
  359.          IF FOUND 
  360.             MESSAGE "Clock Is Running" "Attention" 
  361.          ELSE 
  362.             MESSAGE "Clock Not Found" "Attention" 
  363.          ENDIF 
  364.  
  365. & Flush
  366.  
  367. FLUSH [Receive|Transmit] 
  368.  
  369. This command will empty the receive or transmit buffers.  
  370. Flushing should not be considered complete after execution  
  371. of this command.  Use of a DELAY command is recommended for 
  372. up to 1 second after flushing.   
  373.  
  374. Returns: nothing 
  375. Example: FLUSH R      (empties the receive buffer)  
  376.          DELAY 1000   (allow time to flush completely) 
  377.  
  378. & GetFile
  379.  
  380. *GETFILE [protocol]   ["filename"] 
  381.            XMODEMCS    "filename" 
  382.            XMODEMCRC   "filename" 
  383.            XMODEM1K    "filename" 
  384.            YMODEMBAT  
  385.            YMODEMG  
  386.            ZMODEM 
  387.            B  
  388.            QUICKB 
  389.            ASCII       "filename" 
  390.  
  391. This command will initiate a file download with the specified 
  392. protocol.  The optional "filename" parameter is not required 
  393. for ZMODEM, YMODEM KERMIT, B, and QUICKB protocols since it
  394. is provided by the host computer.  Use the IF [NOT] SUCCESS 
  395. statement to determine the result of the transfer. 
  396.  
  397. Example: INPUTSTRING F1 "Enter a file to Download" 
  398.          GETFILE XMODEMCRC F1 
  399.          IF SUCCESS 
  400.              MESSAGE "FILE RECEIVED" "DOWNLOAD" 
  401.          ELSE 
  402.              MESSAGE "FILE RECEIVED FAILED" "DOWNLOAD" 
  403.          ENDIF 
  404.  
  405. *NOTE: Use of GetFile requires registration 
  406.  
  407. & Hangup
  408.  
  409. HANGUP [DTR] [droptime] 
  410.  
  411. HANGUP (with no parameters) will cause the modem attention 
  412. sequence '+++' to be transmitted in an effort to place the 
  413. modem into command mode.  Once in command mode, the "ATH" 
  414. string is sent to disconnect the line.   
  415.  
  416. If the DTR parameter is specified, UNICOM lowers the Data 
  417. Terminal Ready Signal for 'droptime' milliseconds to 
  418. instruct the modem to hang up.  The modem must be configured 
  419. to sense the loss of DTR.  There is no return value for this 
  420. hangup method. 
  421.  
  422. The IF [NOT] CONNECTED command can be used to test the 
  423. result of the first hangup method.  The result is determined 
  424. by obtaining the modem OK result string upon sending the 
  425. hangup command. 
  426.  
  427. Examples:  HANGUP 
  428.            IF NOT CONNECTED 
  429.               MESSAGE "Hangup Completed" "Attention" 
  430.            ENDIF 
  431.  
  432.            HANGUP DTR 4000    (lowers DTR for 4 seconds) 
  433. & Host
  434. HOST 
  435.  
  436. The Host command causes UNICOM to enter host mode.  
  437. Script execution is halted at this line. 
  438.  
  439. & IF 
  440.  
  441. IF condition 
  442.  
  443. The IF command is used to provide conditional control over 
  444. script execution.  The following syntax is represented as  
  445. follows: 
  446.  
  447. IF condition 
  448.    [perform these commands] 
  449.     . 
  450.     . 
  451. ELSE 
  452.    [perform these steps] 
  453.     . 
  454.     . 
  455. ENDIF 
  456.  
  457. IF (continued) 
  458.  
  459. The ELSE is optional and there must be an ENDIF for every IF 
  460. statement.  Commands may be nested up to 12 levels deep.   
  461.  
  462. Valid conditions for the IF command are SUCCESS, CONNECTED, 
  463. FOUND, WAITFOR, OK, CANCEL, ABORT, RETRY, IGNORE, YES, NO 
  464.  
  465. The OK, CANCEL, ABORT, RETRY, IGNORE, YES and NO conditions, 
  466. when true, indicates the user response to a MESSAGE command. 
  467.  
  468. The FOUND condition is used to test the result of the last 
  469. FIND type command. 
  470.  
  471. FIND, FINDFILE, FINDWINDOW will set the FOUND condition 
  472. flag.  The CONNECTED condition is used to test the result of 
  473. the DIAL and HANGUP commands.  The WAITFOR condition is used 
  474. to check the result of the last WAITFOR command.  If the 
  475. "target" specified in the WAITFOR command was received, the 
  476. WAITFOR condition would be set true.  The WAITFOR condition 
  477. would be set false if the last WAITFOR command timed out 
  478. before receiving the "target".  The NOT operator may prefix 
  479. any conditionals.  The NOT will reverse the value of the 
  480. condition it prefixes.  For example, if SUCCESS is false, 
  481. then NOT SUCCESS would be true. 
  482.  
  483. & InputString 
  484.  
  485. INPUTSTRING variable ["user prompt"] 
  486.  
  487. This command will display a pop-up window containing an Edit 
  488. Box to accept a user entered string.  When entered, the 
  489. string is assigned to the variable specified.  An optional 
  490. prompt string may be specified that will be displayed in the 
  491. title of the window.  The accepted string length is limited 
  492. to 80 characters. 
  493.  
  494. Returns: SUCCESS 
  495. Example: INPUTSTRING V23 "Enter your Name" 
  496. The above example causes a Window titled: 
  497.  "Enter Your Name"  to appear with an edit box. 
  498.  
  499. & KillWindow 
  500.  
  501. KILLWINDOW "string" 
  502.  
  503. The KILLWINDOW command searches for a window containing a 
  504. title matching the string argument.  If one is found, UNICOM 
  505. will send a Destroy message to that window.  Applications 
  506. may be destroyed if their top level (main) window is killed. 
  507.  
  508. Returns: SUCCESS 
  509. Example: KILLWINDOW "Clock"   (kills the clock application) 
  510.  
  511. & LoadKeys
  512.  
  513. LOADKEYS [filename] 
  514.  
  515. The loadkey function loads a predefined keyboard macro file
  516. into memory.  The User Key buttons (if displayed) are updated
  517. immediately.  The keyboard macro file is expected to reside 
  518. in the UNICOM files directory. 
  519.  
  520. & Locate
  521.  
  522. LOCATE row col 
  523.  
  524. The LOCATE command positions the terminal cursor to the  row 
  525. and column specified.  Rows are numbered 0-23, columns 0-79.  
  526. Row 0, column 0 is defined as the upper left corner of the 
  527. screen. 
  528.  
  529. Returns: nothing 
  530. Examples: LOCATE 10 20     (set cursor to row 10 col 20) 
  531.           LOCATE R1 CX      (set cursor row and col 
  532.                         contained in variables R1 and CX) 
  533.  
  534. & Log
  535.  
  536. LOG [option] 
  537.      OPEN ["filename"] 
  538.      CLOSE 
  539.      SUSPEND 
  540.      RESUME 
  541.      TRUNC ["filename"]
  542.  
  543. The LOG command controls file logging during execution of a 
  544. script language file.  The OPEN command will create a new 
  545. file or append to an existing file by the same name.  If the 
  546. filename is omitted, UNICOM.LOG will be used by default. 
  547.  
  548. The CLOSE command will close an open log file. 
  549. The SUSPEND command pauses file logging without closing the  
  550. file (maintaining its file position). 
  551. The RESUME command will resume logging once a SUSPEND 
  552. command has been executed.
  553. TRUNC will open a log file and destroy the contents of
  554. the file if it exists.
  555.  
  556.  
  557. Returns: SUCCESS 
  558. Examples: LOG OPEN       (opens UNICOM.LOG for logging) 
  559.           LOG SUSPEND      (pauses logging) 
  560.           LOG RESUME       ( resume logging) 
  561.           LOG CLOSE        ( close log file) 
  562.  
  563.  
  564. & Message
  565.  
  566. MESSAGE "string" ["title"] [button options] [icon options] 
  567.         button options =   [ok]           (DEFAULT) 
  568.                            [abortretryignore] 
  569.                            [okcancel] 
  570.                            [yesno] 
  571.                            [yesnocancel] 
  572.                            [retrycancel] 
  573.  
  574.         icon options   =   [iconhand]     (DEFAULT = No Icon) 
  575.                            [iconquestion] 
  576.                            [iconexclamation] 
  577.                            [iconasterisk] 
  578.  
  579. When executed, the MESSAGE command will display a windows 
  580. message box containing a message passed in the string 
  581. argument.  The message box may contain an optional title 
  582. that will appear in the title of the window.  The button 
  583. style is selected using the optional button style field.  If 
  584. omitted, the OK style is used as a default.  An optional 
  585. icon can be displayed in the message box by specifying an 
  586. icon type in the icon options field.  If omitted, the 
  587. default for this field is no icon.  Message will set a 
  588. conditional flag that corresponds to the button selected by 
  589. the user.  The conditional flags shown below may be tested 
  590. using the IF statement. 
  591.  
  592. Returns:  ok|cancel|abort|retry|ignore|yes|no 
  593. Example:  INPUTSTRING name "Enter your Name" 
  594.           MESSAGE name "You Entered" okcancel iconquestion 
  595.           IF cancel 
  596.             exit 
  597.           ELSE  
  598.             MESSAGE "You Entered Ok" "OK!" 
  599.           ENDIF 
  600.  
  601. & MoveWindow
  602.  
  603. MOVEWINDOW "title" x y width height 
  604.  
  605. This command will move and size any window.  The title argument 
  606. string is the title of the window to be moved.  The x and y 
  607. parameters represent the screen location where the upper left 
  608. corner of the window will be placed.  Width and height parameters 
  609. specify the dimension (in pixels) for resizing.  If omitted, the 
  610. x, y, width and height parameters will default to zero which can 
  611. produce strange results.     
  612.  
  613. Returns: SUCCESS 
  614. Example: MoveWindow "Clock" 100 150 200 100 
  615.  
  616. & Port 
  617.  
  618. PORT "device;baud;parity;wordsize;stopbits;duplex" 
  619.  
  620. PORT sets the communication port to the settings listed in 
  621. the argument.  All arguments are required, arguments must be 
  622. separated by semicolons with no separating blanks. 
  623.  
  624. Returns:  SUCCESS 
  625. Example:  PORT "COM1;1200;N;8;1;FULL" 
  626.           PORT "NONE"    (Closes Current Port) 
  627.  
  628. Argument Field           Supported Values 
  629. DEVICE                   NONE|COM1|COM2|COM3|COM4 
  630. BAUD                     300 |1200|2400|4800|9600|19200 
  631. PARITY                   N|E|O  (None, Even, Odd) 
  632. WORD SIZE                7|8 
  633. STOP BITS                1|2 
  634. DUPLEX                   FULL|HALF 
  635.  
  636. & Quit
  637.  
  638. QUIT 
  639.  
  640. When executed, the QUIT command will terminate execution of 
  641. the script file and immediately close UNICOM with no 
  642. questions asked.  The UNICOM window is destroyed. 
  643.  
  644. Returns: nothing 
  645. Example:    SEND "Bye"    (log off host) 
  646.             HANGUP        (hangup the modem) 
  647.             QUIT          (exit UNICOM) 
  648.  
  649. & Run
  650.  
  651. RUN "program" [param1 param2 ...paramN] 
  652.  
  653. The RUN command will execute another Windows or DOS 
  654. application.  RUN sets the SUCCESS condition flag if the 
  655. program was successfully run.
  656.  
  657. Examples:  ASSIGN prog "Excel.exe" 
  658.            RUN prog 
  659.            IF SUCCESS 
  660.              MESSAGE "Excel is running" "OK!" 
  661.            ELSE 
  662.              MESSAGE "Unable to Run Excel" "ATTENTION" 
  663.            ENDIF 
  664.  
  665. & Send
  666.  
  667. SEND "string" 
  668.  
  669. The SEND command will transmit the specified string to the 
  670. remote host computer.  Control characters can be transmitted 
  671. with the use of the '^' prefix character.  
  672.  
  673. Returns:  nothing 
  674. Example:  SEND "Hello^M"   (sends Hello followed by a CR) 
  675.  
  676. & SendFile
  677. * SENDFILE  [protocol][filename|filelist] 
  678.               KERMIT    "filename" 
  679.               XMODEMCS  "filename" 
  680.               XMODEMCRC "filename" 
  681.               XMODEM1K  "filename" 
  682.               YMODEMBAT file1 [file2 file3 ...] 
  683.               YMODEMG   file1 [file2 file3 ...] 
  684.               ZMODEM    file1 [file2 file3....] 
  685.               ASCII     "filename" 
  686.               B         "filename" 
  687.               QUICKB "filename" 
  688.  
  689. The SENDFILE command will initiate a file upload to the
  690. remote host computer using a protocol specified in the 
  691. list above. 
  692.  
  693. Returns:  SUCCESS 
  694. Examples: WAITFOR "Begin the transfer now"  (wait until ready) 
  695.           ASSIGN F1 "stock.xls" 
  696.           ASSIGN F2 "tax.xls" 
  697.           INPUTSTRING F3 "Enter another File to send" 
  698.           SENDFILE ZMODEM F1 F2 F3 "other.dat" 
  699.  
  700. The above example sends files stock.xls, tax.xls, a user named 
  701. file in F3, and other.dat using ZMODEM batch protocol. 
  702.  
  703. * NOTE: Use of this function requires Registration  
  704.  
  705.  
  706. & ShowWindow
  707.  
  708. SHOWWINDOW "title" [HIDE|ZOOM|MINIMIZE|SHOW] 
  709.  
  710. SHOWWINDOW will control the appearance of any Window that 
  711. can be identified by its title.  Optional parameters shown 
  712. above, instruct the window to enter a new state as defined 
  713. below: 
  714.  
  715. HIDE:      Iconize the window and activate another 
  716. ZOOM:      Zoom the window to full screen 
  717. MINIMIZE:  Activate window - display as iconic 
  718. SHOW:      (DEFAULT) Activates and displays a window. If it 
  719. is iconic or Zoomed, the window is restored to its original 
  720. size and position. 
  721.  
  722. Returns: SUCCESS 
  723. Example: SHOWWINDOW "Clock" ZOOM   (zooms clock to full screen) 
  724.  
  725. & SnapShot
  726.  
  727. SNAPSHOT  
  728.  
  729. This command will send the current contents of rows 0-24 of 
  730. the terminal screen to the windows spooler for printing. 
  731.  
  732. Returns: nothing 
  733. Example: SNAPSHOT 
  734.  
  735. & SWITCH 
  736.  
  737. SWITCH variable 
  738.  
  739. The SWITCH command allows script execution to branch 
  740. conditionally based on comparison of the SWITCH argument to 
  741. a CASE argument.  SWITCH compares the value of a string 
  742. variable against the values of CASE arguments.  Control will 
  743. branch to the next command following a matching CASE 
  744. argument. 
  745.  
  746.   SWITCH NAME              (Compare cases to NAME variable) 
  747.     CASE "Alfred"          (if it matches  ) 
  748.          (do these commands) 
  749.     ENDCASE                (until reaching ENDCASE)  
  750.     CASE "George"          (does NAME = George?) 
  751.     ENDCASE                (required to terminate each case) 
  752.     DEFAULT                (execute these commands ) 
  753.   ENDSWITCH                (this ends the SWITCH   ) 
  754.  
  755. NAME is a string variable containing a string value obtained 
  756. by an ASSIGN or INPUTSTRING command.  A CASE argument found 
  757. to match the SWITCH argument, will cause UNICOM to begin 
  758. script file execution starting with the command immediately 
  759. following the matching CASE.  Execution continues until an 
  760. ENDCASE command is found.  Upon encountering an ENDCASE, 
  761. UNICOM skips to the command immediately following the 
  762. matching ENDSWITCH command and resumes execution.  Note that 
  763. each CASE statement must have a matching ENDCASE, and each 
  764. SWITCH a matching ENDSWITCH.  The optional DEFAULT case is a 
  765. special case that will be executed provided no CASE 
  766. statements evaluate to TRUE.  The DEFAULT case must be 
  767. positioned behind all CASE/ENDCASE statements for the 
  768. SWITCH.  If there is no DEFAULT case, and no other match is 
  769. found, command file execution will continue with the 
  770. statement following the ENDSWITCH command. 
  771.  
  772. & TitleWindow
  773.  
  774. TITLEWINDOW oldtitle newtitle 
  775.  
  776. This command will replace the title for the first window 
  777. found that contains a title matching the oldtitle parameter. 
  778.  
  779. Returns:  nothing 
  780. Example:   ASSIGN TARGETWINDOW "Clock" 
  781.            TITLEWINDOW TARGETWINDOW "MyClock" 
  782.  
  783. The above example will replace the title of the Clock 
  784. application with the argument string: "MyClock" 
  785.  
  786. & Trace
  787.  
  788. TRACE [ON|OFF] 
  789.  
  790. The TRACE command allows you to "trace" the execution of a 
  791. command file.  If you set TRACE ON, every command will be 
  792. echoed to the screen as it is executed.  TRACE is useful for 
  793. debugging script command files. 
  794.  
  795. Returns: nothing 
  796. Example: TRACE ON       (sets tracing on) 
  797.          TRACE          (sets tracing off) DEFAULT 
  798.  
  799. & Transmit
  800.  
  801. TRANSMIT "string" 
  802.  
  803. See the SEND command - it is identical. 
  804.  
  805. & Waitfor
  806.  
  807. WAITFOR "target" [delay] 
  808.  
  809. The WAITFOR command allows you to pause script execution 
  810. until a specific string has been received from the remote 
  811. host.  The [delay] option instructs UNICOM wait for the 
  812. "target" string for a maximum of delay seconds before timing 
  813. out.  A timeout will cause execution to proceed.  If no 
  814. [delay] is specified, UNICOM will wait 30 seconds by 
  815. default. 
  816.  
  817. Use the IF WAITFOR condition to test the results of a 
  818. WAITFOR command.  Control characters may be expressed in the 
  819. "target" string with the use of the '^' control prefix 
  820. character. 
  821.  
  822. Examples: WAITFOR "^J USERNAME"   (waits for LF, space, USERNAME) 
  823.                                   ( using a 30 Second Wait) 
  824.           IF WAITFOR              (it found w/o timeout) 
  825.             TRANSMIT "username"   (send username) 
  826.           ENDIF 
  827.  
  828. NOTE: WAITFOR targets are CASE SENSITIVE 
  829.  
  830. & WHILE
  831.  
  832. WHILE condition 
  833.  
  834. The WHILE statement allows commands that precede an ENDWHILE 
  835. statement to execute repeatedly until the WHILE condition 
  836. evaluates true. 
  837.  
  838. Example:  WHILE NOT CONNECTED  (dial forever until connected) 
  839.             DIAL "555-1212" 
  840.           ENDWHILE 
  841.  
  842.  
  843.