连接客户端生成器 - 命令行参考
连接客户端生成器命令行参考
ClientGenerator.exe
支持两种静默(非交互式)命令行模式:
-
生成模式
— 创建一个新的
连接从头开始的客户端文件。 -
编辑模式
(
-编辑) — 编辑现有内容连接将文件并将结果写入新文件。
该模式根据是否自动选择。
-编辑
旗帜存在。
生成模式
创建一个新的
连接
客户文件。
语法
ClientGenerator.exe -name "clientname.connect" [-location "output folder"] -server my.server.com -user login -psw password [...]
参数
| 参数 | 必需的 | 描述 |
|---|---|---|
-名称
|
不 |
生成的名称
连接
文件。默认为
Client-
如果省略。
|
-位置
|
不 | 生成文件的文件夹。默认为当前用户的桌面。 |
| (所有其他参数) | 取决于 |
转发给客户生成逻辑(
-服务器
,
用户
,
-密码
,等等)。
|
示例
ClientGenerator.exe -name "clientname.connect" -server my.server.com -server 127.0.0.1 -user login -psw password
编辑模式
编辑现有内容
连接
文件(输入)并将修改后的结果写入新文件
连接
文件(输出)。需要的
-编辑
旗帜。
语法
ClientGenerator.exe -edit -path "input file path" -output "output file path" [-user user] [-psw psw] [-domain domain] [-mode remoteapp|remotedesktop]
参数
| 参数 | 必需的 | 描述 |
|---|---|---|
-编辑
|
是的 | 启用编辑模式。 |
-路径
|
是的 |
输入路径
连接
文件。必须以...结尾
连接
.
|
输出
|
是的 |
输出路径
连接
文件。必须以...结尾
连接
.
|
用户
|
至少一个
用户
,
-密码
,
-域名
,
-模式
是必需的
|
新用户名值。 |
-密码
|
见上文 | 新密码值。 |
-域名
|
见上文 | 新域值。 |
-模式
|
见上文 |
连接模式。必须是
远程应用
或
远程桌面
.
|
示例
ClientGenerator.exe -edit -path "C:\Clients\template.connect" -output "C:\Clients\output.connect" -user jdoe -mode remoteapp
退出代码
| 代码 | 意义 |
|---|---|
0
|
操作成功完成。 |
| 非零 | 操作完成,但出现错误 — 请查看控制台输出以获取详细信息。 |
1
|
无效或缺失的命令行参数。 |
PowerShell 使用示例
生成单个客户
& ".\ClientGenerator.exe" -name "clientname.connect" -server "my.server.com" -user "login" -psw "password"
在循环中生成多个客户端(来自CSV列表)
给定一个
clients.csv
文件:
Name,Server,User,Passwordmarie.connect,srv01.company.com,marie,P@ssw0rd1edgar.connect,srv02.company.com,edgar,P@ssw0rd2rose.connect,srv03.company.com,rose,P@ssw0rd3
$clients = Import-Csv -Path ".\clients.csv"
foreach ($client in $clients) { Write-Host "Generating client: $($client.Name)"
& ".\ClientGenerator.exe" ` -name $client.Name ` -server $client.Server ` -user $client.User ` -psw $client.Password
if ($LASTEXITCODE -ne 0) { Write-Warning "Generation failed for $($client.Name) (exit code $LASTEXITCODE)" }}
为一系列用户名生成客户
$server = "my.server.com"
1..10 | ForEach-Object { $user = "user{0:D2}" -f $_ $name = "$user.connect"
Write-Host "Generating client for $user..."
& ".\ClientGenerator.exe" -name $name -server $server -user $user -psw "TempP@ss123"}
编辑多个现有项
连接
循环中的文件
将相同的域和模式更新应用于每个
连接
文件在文件夹中。
$inputFolder = "C:\Clients\ToUpdate"$outputFolder = "C:\Clients\Updated"
New-Item -ItemType Directory -Path $outputFolder -Force | Out-Null
Get-ChildItem -Path $inputFolder -Filter "*.connect" | ForEach-Object { $outputPath = Join-Path $outputFolder $_.Name
Write-Host "Editing: $($_.Name)"
& ".\ClientGenerator.exe" ` -edit ` -path $_.FullName ` -output $outputPath ` -domain "CORP" ` -mode "remoteapp"
if ($LASTEXITCODE -eq 0) { Write-Host " -> Success" -ForegroundColor Green } else { Write-Warning " -> Failed (exit code $LASTEXITCODE)" }}
编辑具有每个文件设置的客户端(来自CSV)
鉴于一个
edits.csv
文件:
InputPath,OutputPath,User,ModeC:\Clients\a.connect,C:\Clients\a-updated.connect,alice,remoteappC:\Clients\b.connect,C:\Clients\b-updated.connect,bob,remotedesktop
$edits = Import-Csv -Path ".\edits.csv"
foreach ($edit in $edits) { & ".\ClientGenerator.exe" ` -edit ` -path $edit.InputPath ` -output $edit.OutputPath ` -user $edit.User ` -mode $edit.Mode
if ($LASTEXITCODE -ne 0) { Write-Warning "Failed to edit $($edit.InputPath)" }}
注意:
$LASTEXITCODE在本地可执行调用后立即是唯一可靠的。避免在之间运行其他命令。ClientGenerator.exe呼叫和检查。