VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 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関数は、時間があれば試したいと思います。仕事優先なので。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -