New-CMDetectionClauseFile

Создайте предложение метода обнаружения для файла.

Синтаксис

New-CMDetectionClauseFile
   -FileName <String>
   -PropertyType <FileFolderProperty>
   -ExpectedValue <String[]>
   -ExpressionOperator <FileFolderRuleExpressionOperator>
   [-Is64Bit]
   -Path <String>
   [-Value]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
New-CMDetectionClauseFile
   -FileName <String>
   [-Is64Bit]
   -Path <String>
   [-Existence]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Описание

Используйте этот командлет для создания предложения в методе обнаружения в приложении. Это предложение является правилом для файла, которое указывает на наличие приложения.

Чтобы обнаружить папку вместо файла, используйте командлет New-CMDetectionClauseDirectory .

После использования этого командлета используйте один из командлетов Add- или Set- для типов развертывания. Передайте этот объект предложения обнаружения в параметры AddDetectionClause или RemoveDetectionClause .

Чтобы группировать предложения обнаружения, используйте параметр GroupDetectionClauses в командлетах типа развертывания.

Примечание.

Запустите командлеты Configuration Manager с диска сайта Configuration Manager, например PS XYZ:\>. Дополнительные сведения см. в статье Начало работы.

Примеры

Пример 1. Определение приложения по версии

В этом примере обнаруживается app.exe приложения в определенной папке, где версия больше или равна 1.0.0.

$clause = New-CMDetectionClauseFile -Path "C:\Program Files\Application" -FileName App.exe -Value -PropertyType Version -ExpressionOperator GreaterEquals -ExpectedValue "1.0.0"

Set-CMScriptDeploymentType -ApplicationName "CentralApp" -DeploymentTypeName "Scripted install" -AddDetectionClause $clause

Пример 2. Создание нескольких предложений для типа развертывания приложения MSI

В этом примере создаются два предложения файлов и одно предложение реестра, а затем они используются для добавления типа развертывания MSI в приложение.

$cla1=New-CMDetectionClauseFile -FileName "filetest" -PropertyType Size -ExpectedValue 123 -ExpressionOperator IsEquals -Path "C:\" -Value -Is64Bit
$cla2=New-CMDetectionClauseFile -FileName "foldertest" -PropertyType DateCreated -ExpectedValue (Get-Date) -ExpressionOperator LessThan -Path "C:\" -Value
$cla3=New-CMDetectionClauseRegistryKey -Hive ClassesRoot -KeyName "aaa"
$logic1=$cla1.Setting.LogicalName
$logic2=$cla2.Setting.LogicalName
$logic3=$cla3.Setting.LogicalName

Add-CMMsiDeploymentType -AddDetectionClause $cla1,$cla2,$cla3 -ApplicationName "app" -DeploymentTypeName "dt" -InstallCommand "mycommand" -ContentLocation "\\server\sources\Orca.msi" -GroupDetectionClauses $logic1,$logic2 -DetectionClauseConnector {LogicalName=$logic2;Connector="or"},{LogicalName=$logic3;Connector="or"}

Параметры

-DisableWildcardHandling

Этот параметр обрабатывает подстановочные знаки как литеральные символы. Вы не можете объединить его с ForceWildcardHandling.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Existence

При добавлении этого параметра файл должен существовать в целевой системе, чтобы указать на наличие этого приложения.

Вместо того чтобы просто существовать, чтобы оценить правило для свойств этого файла, используйте параметр Value .

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ExpectedValue

При добавлении параметра Value используйте ExpectedValue с PropertyType и ExpressionOperator. При использовании этих параметров файл должен соответствовать правилу, чтобы указать на наличие этого приложения. Этот параметр ExpectedValue задает значение для сравнения с файловой системой.

Сравниваемое значение зависит от указанного PropertyType.

Тип:String[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ExpressionOperator

При добавлении параметра Value используйте ExpressionOperator с PropertyType и ExpectedValue. При использовании этих параметров файл должен соответствовать правилу, чтобы указать на наличие этого приложения. Этот параметр ExpressionOperator указывает оператор для сравнения значения файловой системы с ожидаемым значением.

Начиная с версии 2010 тип параметра изменился с RuleExpressionOperator на FileFolderRuleExpressionOperator.

Тип:FileFolderRuleExpressionOperator
Допустимые значения:IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-FileName

Укажите имя файла, указывающего на наличие приложения. Используйте параметр Path , чтобы указать путь к этому файлу.

Например, консоль Configuration Manager устанавливается по умолчанию в C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe. Чтобы создать правило для этого файла, присвойте этому параметру значение Microsoft.ConfigurationManagement.exe , а параметру Path — значение %ProgramFiles(x86)%\Microsoft Endpoint Manager\AdminConsole\bin.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ForceWildcardHandling

Этот параметр обрабатывает подстановочные знаки и может привести к непредвиденному поведению (не рекомендуется). Его нельзя объединить с DisableWildcardHandling.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Is64Bit

Добавьте этот параметр, чтобы указать, что этот файл связан с 32-разрядным приложением в 64-разрядных системах.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Path

Укажите путь в файловой системе к файлу, который указывает на наличие приложения. Используйте параметр FileName , чтобы указать имя файла.

Например, консоль Configuration Manager устанавливается по умолчанию в C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe. Чтобы создать правило для этого файла, задайте для этого параметра значение %ProgramFiles(x86)%\Microsoft Endpoint Manager\AdminConsole\bin , а для параметра FileName — значение Microsoft.ConfigurationManagement.exe.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PropertyType

При добавлении параметра Value используйте PropertyType с ExpressionOperator и ExpectedValue. При использовании этих параметров файл должен соответствовать правилу, чтобы указать на наличие этого приложения. Этот параметр PropertyType указывает свойство файла для оценки.

Например, для этого параметра задается значение Version, для ExpressionOperator — значение IsEquals, а для Параметра ExpectedValue — значение 1.48.1.0. Затем правило проверяет указанный файл на наличие той же версии файла.

Тип:FileFolderProperty
Допустимые значения:DateCreated, DateModified, Version, Size
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Value

При добавлении параметра Value файл должен соответствовать правилу, чтобы указать на наличие этого приложения. Используйте этот параметр со следующими параметрами: ExpectedValue, ExpressionOperator и PropertyType.

Вместо того чтобы оценивать правило, чтобы просто проверить, существует ли файл, используйте параметр Existence .

Тип:SwitchParameter
Aliases:ValueRule
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

None

Выходные данные

System.Object