File: Test181.ML

package info (click to toggle)
polyml 5.8.1-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 57,736 kB
  • sloc: cpp: 44,918; ansic: 26,921; asm: 13,495; sh: 4,670; makefile: 610; exp: 525; python: 253; awk: 91
file content (33 lines) | stat: -rw-r--r-- 1,075 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
(* Windows tests. *)

case #lookupStruct (PolyML.globalNameSpace) "Windows" of
    SOME _ => ()
|   NONE => raise NotApplicable;

val cmd = valOf(Windows.findExecutable "cmd");

val dirExec: (TextIO.instream, TextIO.outstream) Windows.proc = Windows.execute(cmd, "/c dir");
TextIO.closeOut(Windows.textOutstreamOf dirExec);
val instr = Windows.textInstreamOf dirExec;
TextIO.inputAll instr;
TextIO.closeIn instr;
(* This is defined to be able to repeatedly return a result. *)
val res1 = Windows.reap dirExec;
val res2 = Windows.reap dirExec;

OS.Process.isSuccess res1;
OS.Process.isSuccess res2;


val r = Windows.Reg.openKeyEx(Windows.Reg.currentUser, "Software", Windows.Key.read);
val a = Windows.Reg.enumKeyEx(r, 0);
val b = Windows.Reg.enumValueEx(r, 0);
Windows.Reg.closeKey r;
val r = Windows.Reg.openKeyEx(Windows.Reg.currentUser, "Environment", Windows.Key.read);
val a = Windows.Reg.enumKeyEx(r, 0);
val b = Windows.Reg.enumValueEx(r, 0);
Windows.Reg.closeKey r;

Windows.Config.getVersionEx();
Windows.Config.getWindowsDirectory();
Windows.Config.getUserName();