Win32_StartupCommand クラス
Win32_StartupCommandWMI クラスは、ユーザーがコンピューター システムにログオンしたときに自動的に実行されるコマンドを表します。
次の構文はマネージド オブジェクト フォーマット (MOF) のコードを単純化したもので、すべての継承されたプロパティを含みます。 プロパティとメソッドは、MOF の順序ではなく、アルファベット順です。
構文
[Dynamic, Provider("CIMWin32"), Privileges("SeRestorePrivilege"), UUID("{8502C50A-5FBB-11D2-AAC1-006008C78BC7}"), AMENDMENT]
class Win32_StartupCommand : CIM_Setting
{
string Caption;
string Description;
string SettingID;
string Command;
string Location;
string Name;
string User;
string UserSID;
};
メンバー
Win32_StartupCommand クラスには、次の種類のメンバーがあります。
プロパティ
Win32_StartupCommand クラスには、これらのプロパティがあります。
-
Caption
-
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: MaxLen (64)
現在のオブジェクトの短いテキスト説明。
このプロパティは、 CIM_Settingから継承されます。
-
-
コマンド
-
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: key、 MappingStrings ("Win32Registry|SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run")
スタートアップ コマンドによって実行されるコマンド。
WMI はレジストリ キーからこのデータを取得します
Hkey_local_machine\ソフトウェア\マイクロソフト\Windows\CurrentVersion\実行
例: "C:\Windows\notepad.exe myfile.txt"
-
-
説明
-
-
データ型: string
-
アクセスの種類: 読み取り専用
現在のオブジェクトのテキスト説明。
このプロパティは、 CIM_Settingから継承されます。
-
-
場所
-
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: key、 MappingStrings ("Win32Registry|\\SOFTWARE\\MICROSOFT\\WINDOWS\\CURRENTVERSION\\Windows")
スタートアップ コマンドがディスク ファイル システム上に存在するパス。
例: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
-
-
スタートアップ ("Startup")
-
Common Startup ("Common Startup")
-
HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run ("HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run")
-
HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunServices ("HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunServices")
名前
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: key、 MappingStrings ("Win32API|ファイル構造|WIN32_FIND_DATA|cFileName")
スタートアップ コマンドのファイル名。
例: "FindFast"
SettingID
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: MaxLen (256)
現在のオブジェクトが認識される識別子。
このプロパティは、 CIM_Settingから継承されます。
User
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: key、 MappingStrings ("WMI")
このスタートアップ コマンドを実行するユーザー名。
例: "mydomain\myname"
UserSID
-
データ型: string
-
アクセスの種類: 読み取り専用
-
修飾子: MappingStrings ("WMI")
UserSID プロパティは、このスタートアップ コマンドを実行するユーザーの SID を示します。 その User プロパティは空の場合がありますが、ユーザー名を解決できない場合 (削除されたユーザーの場合など) には UserSID に値が残ります。 プロパティは、未解決の名前を持つ 2 人の異なるユーザーが関連付けられているコマンドを区別するのに役立ちます。 コマンドが、すべてのユーザーのようなユーザーを実際に識別していない項目に関連付けられている場合は NULL である可能性があります。
例:S-1-5-21-1579938362-1064596589-3161144252-1006
注釈
Win32_StartupCommand クラスは、CIM_Settingから派生します。
オペレーティング システムが読み込まれた後、コンピューターの起動は終了しません。 代わりに、Windows の起動時に起動コマンドが実行されるように Windows オペレーティング システムを構成できます。 スタートアップ コマンドは、レジストリまたはユーザー プロファイルの一部として格納され、Windows が読み込まれるたびに、指定されたスクリプトまたはアプリケーションを自動的に起動するために使用されます。
ほとんどの場合、自動開始プログラムは便利です。これにより、ウイルス対策ツールなどの特定のアプリケーションが、Windows が読み込まれるたびに自動的に起動および実行されます。 ただし、自動開始プログラムは、次のような問題にも責任を負う可能性があります。
- 起動に非常に長い時間がかかるコンピューター。 これは、Windows が起動するたびに起動する必要がある多数のアプリケーションの結果である可能性があります。
- タスク バーまたはタスク マネージャーで、ユーザーが起動しなかった場合でも表示されるアプリケーション。 これらのアプリケーションは必ずしも問題を引き起こすとは限りませんが、これらのプログラムのどこから来たのか、なぜ実行しているのかについて混乱しているユーザーからのヘルプ デスクの呼び出しが発生する可能性があります。
- アイドル状態に見えても問題が発生しているコンピューター。 これらの問題は、多くの場合、実行されていることを誰も認識していないときに実行されているスタートアップ コマンドにトレースされます。
スタートアップ コマンドはさまざまな場所に格納できるため、起動時に自動的に実行されるアプリケーションとスクリプトの識別は重要ですが、困難な管理タスクです。
- HKLM\Software\Microsoft\Windows\CurrentVersion\Run
- HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
- HKCU\Software\Microsoft\Windows\CurrentVersion\Run
- HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
- HKU\ProgID\Software\Microsoft\Windows\CurrentVersion\Run
- systemdrive\Documents and Settings\All Users\Start Menu\Programs\Startup
- systemdrive\Documents and Settings\username\Start Menu\Programs\Startup
WMI Win32_StartupCommand クラスを使用すると、情報の格納場所に関係なく、自動開始プログラムを列挙できます。
このクラスを使用する呼び出し元プロセスには、レジストリが存在するコンピューターに対する SE_RESTORE_NAME 特権が必要です。 たとえば、ローカル コンピューターでこのクラスを列挙する場合、アプリケーションを実行するアカウントには、この特権が必要です。 詳細については、「 特権操作の実行」を参照してください。
Win32_StartupCommandがデータを取得 する レジストリ値を変更するには、スクリプトまたは C++ で WMI システム レジストリ プロバイダー メソッドを呼び出します。 詳細については、「 システム レジストリの変更」を参照してください。
例
次の VBScript は、コンピューター上のスタートアップ コマンドを列挙します。
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colStartupCommands = objWMIService.ExecQuery _
("SELECT * FROM Win32_StartupCommand")
For Each objStartupCommand in colStartupCommands
Wscript.Echo "Command: " & objStartupCommand.Command
Wscript.Echo "Description: " & objStartupCommand.Description
Wscript.Echo "Location: " & objStartupCommand.Location
Wscript.Echo "Name: " & objStartupCommand.Name
Wscript.Echo "SettingID: " & objStartupCommand.SettingID
Wscript.Echo "User: " & objStartupCommand.User
Next
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
名前空間 |
Root\CIMV2 |
MOF |
|
[DLL] |
|
こちらもご覧ください