home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 May / W2KPRK.iso / scripts.cab / test.kix < prev    next >
Text File  |  1999-11-04  |  8KB  |  340 lines

  1. ;  TEST.kix
  2. ;
  3. ;  17-Aug-1999
  4. ;
  5. ;  Note :  This code sample is provided for demonstration purposes only.
  6. ;          Microsoft makes no warranty, either express or implied,
  7. ;          as to its usability in any given situation.
  8. ;
  9. ;   Copyright (C) 1995 Microsoft Corporation.
  10. ;   All rights reserved.
  11. ;
  12.  
  13. break ON
  14. DIM $Menu[11]
  15.  
  16. $Menu[ 0] = "a.  demo Play"
  17. $Menu[ 1] = "b.  demo Sleep"
  18. $Menu[ 2] = "c.  demo box / big / color"
  19. $Menu[ 3] = "d.  display standard Macro's"
  20. $Menu[ 4] = "e.  display LAN Macro's"
  21. $Menu[ 5] = "f.  demo Env / Shell"
  22. $Menu[ 6] = "g.  demo Use"
  23. $Menu[ 7] = "h.  Call RECUR"
  24. $Menu[ 8] = "i.  demo Loop"
  25. $Menu[ 9] = "j.  test I/O funcs"
  26. $Menu[10] = "k.  shell %COMSPEC%"
  27.  
  28. :start
  29. while 1
  30.    cls
  31.    color g+/n
  32.    $count = 0
  33.    do
  34.       at ( 6+$count,10) $Menu[$count]
  35.       $count=$count+1
  36.    until $count > 10
  37.  
  38.    color w/n
  39.    at (18,10) "Enter a-k or 'Q' to quit"
  40.    do
  41.       get $jump
  42.    until $jump = 'Q' or ($jump >= 'a' and $jump <= 'k')
  43.  
  44.    ;
  45.    ; this is just a superfluous 'select' to demo its use
  46.    ;
  47.    select
  48.       case $jump = 'a'
  49.            gosub "sub_a"
  50.  
  51.       case $jump = 'b'
  52.            gosub "sub_b"
  53.  
  54.       case $jump = 'q'
  55.            exit 0
  56.  
  57.       case 1   ; any other value : just gosub to the relevant routine
  58.            gosub "Sub_" + $jump
  59.  
  60.    endselect
  61. loop
  62.  
  63.  
  64. :Sub_a        ; Play
  65.  
  66. cls
  67. ? "Demo Play..."
  68. ? "Demo 1 : KiXtart will play JBOND.SPK after you press a key..." get $x
  69. if exist("jbond.spk")
  70.    play file "jbond.spk"
  71. else
  72.    if exist(@ldrive+"jbond.spk")
  73.       play file @ldrive+"jbond.spk"
  74.    else
  75.       ? "Sorry, JBOND.SPK appears to be missing."
  76.       ? "However, I'll play the first few notes from memory :-)"
  77.  
  78.       PLAY " 0g256t 0g8d247f 4d165f 247f 8d262f 4d165f 262f 8d277f 4d165f
  79.              277f   8d262f   4d165f 262f 8d247f 4d165f 247f 8d262f 4d165f
  80.              262f   8d277f   4d165f 277f 8d262f "
  81.    endif
  82. endif
  83. ?
  84. ? "Demo 2 : KiXtart will play CHIMES.WAV after you press a key..." get $x
  85. if exist("chimes.wav")
  86.    play file "chimes.wav"
  87. else
  88.    if exist(@ldrive+"chimes.wav")
  89.       play file @ldrive+"chimes.wav"
  90.    else
  91.       ? "Sorry, CHIMES.WAV appears to be missing."
  92.    endif
  93. endif
  94. at (23,0) "<anykey> to continue..." get $x
  95. return
  96.  
  97. :Sub_b
  98. cls
  99.  
  100. ? "Demo 1 : KiXtart will sleep 3 seconds after you press a key..."
  101. get $x
  102. ? "(Start time : @time)"
  103. sleep 3
  104. ? "(End   time : @time)"
  105.  
  106. ? "Demo 2 : KiXtart will sleep 10 seconds after you press a key..."
  107. get $x
  108. ? "(Start time : @time)"
  109. sleep 10
  110. ? "(End   time : @time)"
  111.  
  112. at (23,0) "<anykey> to continue..." get $x
  113. return
  114.  
  115. :Sub_c
  116. cls
  117. color w/n at(0, 1) '"single"'    color b/n BOX(1, 0,4, 8,single)
  118. color w/n at(0,12) '"double"'    color g/n BOX(1,11,4,19,double)
  119. color w/n at(0,23) '"grid"'      color c/n BOX(1,22,4,30,grid)
  120. color w/n at(0,34) '"full"'      color r/n BOX(1,33,4,41, full)
  121. color w/n at(0,46) '""'          color m/n BOX(1,44,4,52, "")
  122. color w/n at(0,54) '"abcdefgh "' color y/n BOX(1,55,4,63,"abcdefgh ")
  123. color w/n at(0,66) '"abcdefghi"' color w/n BOX(1,67,4,75,"abcdefghi")
  124.  
  125. color w+/n at ( 6, 0) big "BIG big"
  126. color g+/n at (11,62) small "SMALL small"
  127.  
  128. color w/n at (15,0) "b/n" color b/n at (15,7) "X" color w/n at (15,15) "b+/n" color b+/n at (15,22) "X"
  129. color w/n at (16,0) "g/n" color g/n at (16,7) "X" color w/n at (16,15) "g+/n" color g+/n at (16,22) "X"
  130. color w/n at (17,0) "c/n" color c/n at (17,7) "X" color w/n at (17,15) "c+/n" color c+/n at (17,22) "X"
  131. color w/n at (18,0) "r/n" color r/n at (18,7) "X" color w/n at (18,15) "r+/n" color r+/n at (18,22) "X"
  132. color w/n at (19,0) "m/n" color m/n at (19,7) "X" color w/n at (19,15) "m+/n" color m+/n at (19,22) "X"
  133. color w/n at (20,0) "y/n" color y/n at (20,7) "X" color w/n at (20,15) "y+/n" color y+/n at (20,22) "X"
  134. color w/n at (21,0) "w/n" color w/n at (21,7) "X" color w/n at (21,15) "w+/n" color w+/n at (21,22) "X"
  135.  
  136. color w/n
  137. at (23,0) "<anykey> to continue..." get $x
  138. return
  139.  
  140. :Sub_d
  141. cls
  142. color g+/n
  143. "Display standard macro's..."
  144. color g/n
  145. at ( 3,1)  "DATE"
  146. at ( 4,1)  "TIME"
  147. at ( 5,1)  "DAY"
  148. at ( 6,1)  "MDAYNO"
  149. at ( 7,1)  "WDAYNO"
  150. at ( 8,1)  "YDAYNO"
  151. at ( 9,1)  "MONTH"
  152. at (10,1)  "MONTHNO"
  153. at (11,1)  "YEAR"
  154. at (12,1)  "DOS"
  155. at (13,1)  "KIX"
  156. at (14,1)  "RAS"
  157.  
  158. color w+/n
  159. at ( 3,12)  @DATE
  160. at ( 4,12)  @TIME
  161. at ( 5,12)  @DAY
  162. at ( 6,12)  @MDAYNO
  163. at ( 7,12)  @WDAYNO
  164. at ( 8,12)  @YDAYNO
  165. at ( 9,12)  @MONTH
  166. at (10,12)  @MONTHNO
  167. at (11,12)  @YEAR
  168. at (12,12)  @DOS
  169. at (13,12)  @KIX
  170. at (14,12)  @RAS
  171. color w/n
  172. at (23,0) "<anykey> to continue..." get $x
  173. return
  174.  
  175. :Sub_e
  176. cls
  177. color g+/n
  178. "Display LAN macro's..."
  179. color g/n
  180. at ( 3,1)  "ADDRESS"
  181. at ( 4,1)  "COMMENT"
  182. at ( 5,1)  "DOMAIN"
  183. at ( 6,1)  "FULLNAME"
  184. at ( 7,1)  "HOMEDRIVE"
  185. at ( 8,1)  "LONGHOMEDIR"
  186. at ( 9,1)  "HOMEDIR"
  187. at (10,1)  "HOMESHR"
  188. at (11,1)  "LANROOT"
  189. at (12,1)  "LDOMAIN"
  190. at (13,1)  "LDRIVE"
  191. at (14,1)  "LM"
  192. at (15,1)  "LSERVER"
  193. at (16,1)  "MAXPWAGE"
  194. at (17,1)  "PRIV"
  195. at (18,1)  "PWAGE"
  196. at (19,1)  "USERID"
  197. at (20,1)  "WKSTA"
  198. color w+/n
  199. at ( 3,12)  @ADDRESS
  200. at ( 4,12)  @COMMENT
  201. at ( 5,12)  @DOMAIN
  202. at ( 6,12)  @FULLNAME
  203. at ( 7,12)  @HOMEDRIVE
  204. at ( 8,12)  @LONGHOMEDIR
  205. at ( 9,12)  @HOMEDIR
  206. at (10,12)  @HOMESHR
  207. at (11,12)  @LANROOT
  208. at (12,12)  @LDOMAIN
  209. at (13,12)  @LDRIVE
  210. at (14,12)  @LM
  211. at (15,12)  @LSERVER
  212. at (16,12)  @MAXPWAGE
  213. at (17,12)  @PRIV
  214. at (18,12)  @PWAGE
  215. at (19,12)  @USERID
  216. at (20,12)  @WKSTA
  217. color w/n
  218. at (23,0) "<anykey> to continue..." get $x
  219. return
  220.  
  221. :Sub_f
  222. cls
  223. ? "Test : 'Environment vars. / Shell'"
  224. setl "Kixtest="
  225. ? "Please verify Kixtest= variable is empty / absent, then press anykey"
  226. ? ?
  227. shell "%comspec% /c set"
  228. get $x
  229. cls
  230. setl "Kixtest=tsetxiK"
  231. if @error
  232.    ? "Hmmm, apparently, there aren't enough bytes available in the environment.."
  233.    ? "press <anykey> to return to menu..." get $x
  234. else
  235.    ? "Please verify PREsence of the Kixtest= variable, then press anykey"
  236.    ? ?
  237.    shell "%comspec% /c set"
  238.    get $x
  239.    setl "Kixtest="
  240. endif
  241. return
  242.  
  243. :Sub_g
  244. cls
  245. ? "Test : USE (LIST)"
  246. use list
  247. ? "Verify V: isn't redirected, then press"
  248. ? "anykey to redirect V: to '@@LSERVER\NETLOGON'"
  249. get $x
  250. use v: /d
  251. use v: "@lserver\netlogon"
  252. if @error
  253.    ? "Ohoh, redirect failed with errorcode : " + @error
  254. else
  255.    use list
  256.    ? "Verify that V: is indeed redirected,"
  257.    ? "then press anykey to remove the redirection"
  258.    get $x
  259.    use v: /d
  260.    use list
  261.    ? "Verify that V: is no longer redirected"
  262. endif
  263. ? "press anykey to return to the menu"
  264. get $x
  265. return
  266.  
  267.  
  268. :Sub_h
  269. cls
  270. ? "Test : CALL command. Press anykey to CALL RECUR.kix."
  271. cls
  272. ? "Press anykey for next level or 'Q' to quit"
  273. Call "RECUR.kix"
  274. ? "Returned to main script. Press anykey to return to the menu" get $x
  275. return
  276.  
  277.  
  278. :Sub_i
  279. cls
  280. Call "FLY.kix"
  281. ? "Returned to main script. Press anykey to return to the menu" get $x
  282. return
  283.  
  284.  
  285. :Sub_j
  286. cls
  287. color g+/n
  288. ? "Press anykey to start test (open FLY.kix, READ & display lines, CLOSE.." get $x
  289. $result = 1
  290. if exist("@LDRIVE\fly.kix")
  291.    $result = open( 1 , "@LDRIVE\FLY.kix" )
  292. else
  293.    if exist("fly.kix")
  294.       $result = open( 1 , "FLY.kix" )
  295.    else
  296.       BEEP
  297.       ? "Sorry, FLY.kix appears to be missing."
  298.    endif
  299. endif
  300.  
  301. if $result = 0
  302.    $line = readline( 1 )
  303.    while @ERROR = 0
  304.          color w/n
  305.          ? "Line read : ["
  306.          color w+/n
  307.          $line
  308.          color w/n
  309.          "]"
  310.          $line = readline( 1 )
  311.    loop
  312.    $result = close( 1 )
  313. else
  314.    BEEP
  315.    ? "Sorry, failed to open FLY.kix, errorcode : [" + @ERROR + "]"
  316. endif
  317.  
  318. color g+/n
  319. ? "Test completed. Press anykey to return to the menu..." get $x
  320. color w/n
  321. return
  322.  
  323.  
  324.  
  325. :Sub_k
  326. cls
  327. color g+/n
  328. ? "Press anykey to SHELL %COMSPEC%..." get $x
  329.  
  330. SHELL %COMSPEC%
  331. IF @ERROR <> 0
  332.    BEEP
  333.    ? "SHELL failed with errorcode : [" + @ERROR + "]"
  334. endif
  335.  
  336. color g+/n
  337. ? "Test completed. Press anykey to return to the menu..." get $x
  338. color w/n
  339. return
  340.