回答編集履歴

1

別の解決策も発見しました

2015/10/30 05:24

投稿

juam
juam

スコア26

test CHANGED
@@ -24,7 +24,7 @@
24
24
 
25
25
  Do Until shell.AppActivate("ユーザー アカウント")
26
26
 
27
- Wscript.Sleep 1000
27
+ Wscript.Sleep 100
28
28
 
29
29
  If i > 10 Then Wscript.Quit
30
30
 
@@ -39,3 +39,45 @@
39
39
  shell.Sendkeys("{ENTER}")
40
40
 
41
41
  ```
42
+
43
+
44
+
45
+ 以下でもうまくいきました。
46
+
47
+ Run()は関数呼び出し、Exec()は実行ファイル呼び出し、
48
+
49
+ でないとうまくいかない場合があるということなのかもしれません。
50
+
51
+
52
+
53
+ ```VBScript
54
+
55
+ Option Explicit
56
+
57
+ Dim shell, i
58
+
59
+ Set shell = CreateObject("WScript.Shell")
60
+
61
+ 'shell.Run("rundll32.exe netplwiz.dll,UsersRunDll")
62
+
63
+ shell.Exec "Netplwiz.exe"
64
+
65
+
66
+
67
+ Do Until shell.AppActivate("ユーザー アカウント")
68
+
69
+ Wscript.Sleep 100
70
+
71
+ If i > 10 Then Wscript.Quit
72
+
73
+ i = i + 1
74
+
75
+ Loop
76
+
77
+
78
+
79
+ shell.Sendkeys("%E{-}")
80
+
81
+ shell.Sendkeys("{ENTER}")
82
+
83
+ ```