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