Sdílet prostřednictvím


Invoke-CMWmiQuery

SYNOPSIS

Spusťte dotaz rozhraní WMI.

SYNTAX

ByWql (výchozí)

Invoke-CMWmiQuery [-Context <Hashtable>] [-Option <QueryOptions>] [-Query] <String> [-DisableWildcardHandling]
 [-ForceWildcardHandling] [-WhatIf] [-Confirm] [<CommonParameters>]

BySearch

Invoke-CMWmiQuery -ClassName <String> [-Context <Hashtable>] [-Option <QueryOptions>]
 -Search <SmsProviderSearch> [-DisableWildcardHandling] [-ForceWildcardHandling] [-WhatIf] [-Confirm]
 [<CommonParameters>]

DESCRIPTION

rutina Invoke-CMWmiQuery spustí dotaz rozhraní WMI (Windows Management Instrumentation) (WMI). Na rozdíl od jiných rutin nebo nástrojů dotazování s touto rutinou už je pro vás nastavené připojení a obor názvů.

Tuto rutinu můžete použít také k vytvoření dotazu s jazyk WQL (WMI Query Language) (WQL). Configuration Manager používá WQL pro dotazy v kolekcích. WQL je podobný SQL, ale stále používá poskytovatele služby SMS, a to tak, že je společnost řízení přístupu na základě rolí.

Poznámka

Použijte například rutiny Configuration Manager z Configuration Manager jednotky webu PS XYZ:\> . Další informace najdete v tématu Začínáme.

EXAMPLES

Příklad 1: spuštění dotazu jazyka WQL

První příkaz vytvoří dotaz WQL a uloží jej do proměnné $WQL . Druhý příkaz spustí dotaz uložený v proměnné.

$WQL = @"
SELECT app.* FROM SMS_ApplicationLatest AS app
INNER JOIN SMS_CIContentPackage AS con ON app.CI_ID=con.CI_ID
INNER JOIN SMS_DistributionPoint AS srv ON con.PackageID=srv.PackageID
WHERE app.IsHidden = 0
"@

Invoke-CMWmiQuery -Query $WQL -Option Lazy

Příklad 2: spuštění dotazu rozhraní WMI pro kolekce zařízení

První příkaz vytvoří objekt hledání a uloží objekt do proměnné $Search .

Druhý příkaz určuje, že je pořadí hledání vzestupné podle ID kolekce.

Třetí příkaz přidá parametry hledání do objektu $Search . V tomto případě dotaz vyhledá kolekce zařízení.

Poslední příkaz spustí dotaz uložený v $Search. Určuje SMS_Collection jako třídu, která obsahuje vlastnost CollectionID .

$Search = [Microsoft.ConfigurationManagement.PowerShell.Provider.SmsProviderSearch]::new()
$Search.AddOrder("CollectionID", [Microsoft.ConfigurationManagement.PowerShell.Provider.SearchParameterOrderBy]::Asc)
$Search.Add("Name","DeviceCol*", $True)

Invoke-CMWmiQuery -Search $Search -ClassName "SMS_Collection" -Option Lazy

Příklad 3: spuštění dotazu rozhraní WMI pro lokality podle stavu

První příkaz vymaže parametry hledání z existujícího objektu vyhledávání.

Druhý příkaz přidá parametry hledání do objektu $Search . V tomto případě dotaz vyhledá weby.

Poslední příkaz spustí dotaz uložený v $Search. Určuje SMS_Site jako třídu, která obsahuje vlastnost stav lokality.

$Search.Clear()
$Search.Add("Status", $True)

Invoke-CMWmiQuery -ClassName "SMS_Site" -Search $Search

Příklad 4: spuštění dotazu rozhraní WMI pro weby podle názvu

První příkaz vymaže parametry hledání z existujícího objektu vyhledávání.

Druhý příkaz přidá parametry hledání do objektu $Search . V tomto případě dotaz vyhledá weby.

Poslední příkaz spustí dotaz uložený v $Search. Určuje SMS_Site jako třídu, která obsahuje vlastnost název_webu .

$Search.Clear()
$Search.Add("SiteName", $null, [Microsoft.ConfigurationManagement.PowerShell.Provider.SearchParameterOperator]::NotEquals)

Invoke-CMWmiQuery -ClassName "SMS_Site" -Search $Search

Příklad 5: spuštění dotazu rozhraní WMI pro aplikace

První příkaz vymaže parametry hledání z existujícího objektu vyhledávání.

Druhý příkaz přidá parametry hledání do objektu $Search . V tomto případě dotaz vyhledává aplikace.

Poslední příkaz spustí dotaz uložený v $Search. Určuje SMS_Site jako třídu, která obsahuje vlastnost CI_ID webu.

$Search.Clear()
$Search.AddAdhoc("CI_ID > 0")

Invoke-CMWmiQuery -ClassName "SMS_Application" -Search $Search -Option Lazy

PARAMETERS

-ClassName

Určuje Configuration Manager třídu služby WMI, kterou chcete dotazovat.

Type: String
Parameter Sets: BySearch
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

– Kontext

Určete kontext rozhraní WMI jako zatřiďovací tabulku. Je seznam párů název/hodnota, které jsou předány zprostředkovateli rozhraní WMI, který podporuje kontextové informace pro přizpůsobenou operaci.

Type: Hashtable
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-DisableWildcardHandling

Tento parametr považuje zástupné znaky jako literálové hodnoty znaků. Nejde kombinovat s ForceWildcardHandling.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ForceWildcardHandling

Tento parametr zpracovává zástupné znaky a může vést k neočekávanému chování (nedoporučujeme). Nejde kombinovat s DisableWildcardHandling.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

– Možnost

Nejběžnější možností je Fast .

Zadejte možnost dotazu:

  • None: Výchozí
  • Lazy: Ve výchozím nastavení rutina načte opožděné vlastnosti.
  • Fast: Tuto možnost použijte, pokud nechcete načíst opožděné vlastnosti. Tato možnost umožňuje rychleji vracet výsledky pro některé třídy.
  • ExpectResults & ExpectResultsThrowException: Pokud dotaz nevrátí žádné výsledky, vyvolejte výjimku. Tato výjimka obvykle ukončí skript.
  • FastExpectResults & LazyExpectResults: Tyto možnosti jsou kombinovány Fast a Lazy s ExpectResults .
  • ExpectResultsSoftFail: Pokud dotaz nevrátí žádné výsledky, výstup chyby, ale skript neukončí.

Další informace o opožděných vlastnostech naleznete v tématu Configuration Manager opožděných vlastností.

Následující hodnoty jsou pouze pro interní použití:

  • Klonování
  • Maska
  • Aktualizovat
  • IgnoreNoResults
Type: QueryOptions
Parameter Sets: (All)
Aliases: Options
Accepted values: None, NoRefresh, Lazy, Fast, ExpectResults, FastExpectResults, LazyExpectResults, Clone, ExpectResultsSoftFail, ExpectResultsThrowException, NoMask, IgnoreNoResults

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

– Dotaz

Určuje příkaz jazyk WQL (WMI Query Language) (WQL).

Type: String
Parameter Sets: ByWql
Aliases:

Required: True
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

Určuje objekt SMSProviderSearch .

Type: SmsProviderSearch
Parameter Sets: BySearch
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina se nespustí.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

CommonParameters

Tato rutina podporuje společné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v tématu about_CommonParameters.

INPUTS

Žádná

OUTPUTS

IResultObject []

IResultObject

POZNÁMKY

Invoke – CMWmiMethod