<p>Testé et fonctionnel :</p>
<pre><code class="lang-auto">#Must be the first statement in your script (not counting comments)
param([Int32]$step=30)
$iTunes = New-Object -ComObject iTunes.Application
if ($iTunes.playerstate -eq 1)
{
$iTunes.PlayerPosition = $iTunes.PlayerPosition + $step
}
</code></pre>
<p>Appelez-le avec</p>
<pre><code class="lang-auto">powershell.exe -file itunesForward.ps1 -step 15
</code></pre>
<p>Syntaxe pour paramètres multiples (les commentaires sont optionnels, mais autorisés) :</p>
<pre><code class="lang-auto"><#
Script description.
Some notes.
#>
param (
height of largest column without top bar
[int]$h = 4000,
# name of the output image
[string]$image = 'out.png'
)
</code></pre>
<p>Et voici un exemple pour les <a href="https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_functions_advanced_parameters?view=powershell-7.1">paramètres avancés</a>, par exemple <em>Mandatory</em> :</p>
<pre><code class="lang-auto"><#
Script description.
Some notes.
#>
param (
height of largest column without top bar
[Parameter(Mandatory=$true)]
[int]$h,
# name of the output image
[string]$image = 'out.png'
)
Write-Host "$image $h"
</code></pre>
<p>Une valeur par défaut ne fonctionnera pas avec un paramètre obligatoire. Vous pouvez omettre le <code>=$true</code> pour les paramètres avancés de type booléen <code>[Parameter(Mandatory)]</code>.</p>