投稿日 | : 2003/09/04(Thu) 14:26 |
投稿者 | : こばし |
Eメール | : |
URL | : |
タイトル | : Re^6: XPの再起動について |
> SYSINFOコントロールは、OSの種類のチェックに使っているだけなので
> 代わりにWin32APのGetVersionEx関数を使えばいいのでは
>
> http://www.vbvbvb.com/jp/gtips/0501/gGetVersionEx.html
ラーニングエディションはダメでプロフェッショナルだとOKってことはないでしょうか?
SYSINFOコントロールの使用はあきらめて、VBS?で作った人がいたので、それをマネして作ったらXPでも動きました。以下コードです。
Private Sub Command5_Click()
Dim int_Response As Integer
'プロジェクト→参照設定→『Microsoft WMI Scripting V1.1 Library』を追加
Dim obj_Service As WbemScripting.SWbemObject
Dim obj_ServiceSet As WbemScripting.SWbemObjectSet
Set obj_ServiceSet = _
GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}").InstancesOf("Win32_OperatingSystem")
'--------------------------------------------------
'終了
'--------------------------------------------------
int_Response = MsgBox( _
"Windows を終了しますか?", vbOKCancel, "シャットダウン")
If int_Response = 2 Then
Exit Sub
End If
For Each obj_Service In obj_ServiceSet
obj_Service.Win32Shutdown 8
Next
End Sub
GetVersionEx関数は、時間があれば試したいと思います。仕事優先なので。