Partager via

Automatiser l'installation d'Office 2016

Anonyme
2024-12-11T10:38:57+00:00

# Chemin vers Edge

$edgePath = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"

$downloadFolder = "C:\Users\$env:USERNAME\Downloads"

# Vérifier si Edge existe

if (-Not (Test-Path $edgePath)) {

    Write-Host "Le chemin vers msedge.exe est incorrect. Veuillez vérifier la variable `$edgePath`."

    exit

}

Write-Host "Téléchargement d'Office`n"

# Dictionnaire des téléchargements Office

$officeDownloads = @{

    "1" = "https://Myserver/download/Office2010Std.zip"

    "2" = "https://Myserver//download/office2013STD/O2013x64.iso"

    "3" = "https://Myserver//download/office2016STD/x64.iso"

    "4" = "https://Myserver//download/o2019x64.zip"

}

Write-Host "1 - Office 2010 Standard"

Write-Host "2 - Office 2013 Standard"

Write-Host "3 - Office 2016 Standard"

Write-Host "4 - Office 2019 Standard"

Write-Host "c - Ne pas télécharger Office"

$selectOffice = Read-Host "Quelle version d'Office souhaitez-vous télécharger ?"

switch ($selectOffice) {

    '1' { & $edgePath $officeDownloads['1'] }

    '2' { & $edgePath $officeDownloads['2'] }

    '3' { & $edgePath $officeDownloads['3'] }

    '4' { & $edgePath $officeDownloads['4'] }

    'c' {

        Write-Host "Aucun téléchargement d'Office ne sera effectué."

        exit

    }

    default {

        Write-Host "Option invalide. Veuillez sélectionner une option correcte."

        exit

    }

}

Write-Host "Attente de 30 secondes pour le téléchargement..."

Start-Sleep -Seconds 30

$latestFile = Get-ChildItem -Path $downloadFolder -Filter "x64*" |

    Sort-Object LastWriteTime -Descending |

    Select-Object -First 1

if ($latestFile) {

    Write-Host "Fichier trouvé : $($latestFile.FullName)"

    # Démarrer l'installation de l'ISO

    Start-Process $latestFile.FullName

    Write-Host "Attente de 10 secondes pour monter l'ISO..."

    Start-Sleep -Seconds 10

    # Créer un fichier XML de configuration pour l'installation

    $setupPath = Join-Path -Path $downloadFolder -ChildPath "OfficeSetup.xml"

    $xmlContent = @"

<Configuration>

    <Add SourcePath="." OfficeClientEdition="x64">

        <Product ID="O365ProPlusRetail">

            <Language ID="fr-fr" />

        </Product>

    </Add>

    <Updates Enabled="TRUE" Channel="Monthly" />

    <Display Level="None" AcceptEULA="TRUE" />

    <Property Name="AutoActivate" Value="1" />

</Configuration>

"@

    $xmlContent | Out-File -FilePath $setupPath -Encoding UTF8

    # Détection des lecteurs avec setup.exe pour une installation silencieuse

    $cdDrive = Get-PSDrive -PSProvider FileSystem | Where-Object { $_.Root -match "^[A-Z]:\\" -and (Test-Path "$($_.Root)setup.exe") }

    if ($cdDrive) {

        Write-Host "Lecteur détecté : $($cdDrive.Root). Installation silencieuse d'Office..."

        # Installation silencieuse avec les bons arguments

        Start-Process -FilePath "$($cdDrive.Root)setup.exe" -ArgumentList "/quiet", "/config $setupPath" -Wait

        Write-Host "Installation d'Office terminée."

        # Éjection automatique des lecteurs CD

        Write-Host "Éjection automatique des lecteurs CD..."

        try {

            $cdroms = Get-WmiObject -Query 'SELECT * FROM Win32_CDROMDrive'

            if ($cdroms) {

                foreach ($cdrom in $cdroms) {

                    try {

                        $cdrom.Eject()  # Essaye d'éjecter chaque lecteur

                        Write-Host "Lecteur $($cdrom.DriveLetter) éjecté correctement."

                    }

                    catch {

                        Write-Host "Impossible d'éjecter le lecteur $($cdrom.DriveLetter)."

                    }

                }

            } else {

                Write-Host "Aucun lecteur CD-ROM trouvé."

            }

        }

        catch {

            Write-Host "Une erreur est survenue lors de l'éjection des lecteurs : $_"

        }

        Write-Host "Attente de 5 secondes pour s'assurer que l'ISO est correctement libéré..."

        Start-Sleep -Seconds 5

        # Tentative de suppression des fichiers ISO et XML

        try {

            if (Test-Path $latestFile.FullName) {

                Remove-Item -Path $latestFile.FullName -Force -ErrorAction SilentlyContinue

                Write-Host "Le fichier ISO a été supprimé : $($latestFile.FullName)"

            }

            if (Test-Path $setupPath) {

                Remove-Item -Path $setupPath -Force -ErrorAction SilentlyContinue

                Write-Host "Le fichier OfficeSetup.xml a été supprimé."

            }

        }

        catch {

            Write-Host "Une erreur est survenue lors de la suppression des fichiers : $_"

        }

    }

} else {

    Write-Host "Aucun fichier correspondant trouvé dans Downloads."

}

Quand j'essaye d'ouvrir setup.exe avec le fichier XML, rien ne se passe. La fenêtre d'aide Office s'ouvre et rien n'est installé.

Quelqu'un peut-il m'aider ?

-----------------------

Note de la modérationNous sommes sur un forum francophone, on y parle couramment le français. Merci d'écrire en français, ça simplifie la compréhension pour tous (et aussi un peu le travail des modérateurs - cette réponse a été traduite "manuellement"). 😉

Microsoft 365 et Office | Installer, entrer des clés, activer | Autres | Autres

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

1 réponse

  1. Anonyme
    2024-12-12T09:34:56+00:00

    Cette réponse a été automatiquement traduite. Par conséquent, il peut y avoir des erreurs grammaticales ou des formulations étranges.

    Cher Aleks_info,

    Bonjour ! Bienvenue dans la communauté Microsoft. Je suis heureux de pouvoir vous aider.

    Il semble que vous ayez un problème avec l’installation qui ne répond pas lorsque vous essayez d’automatiser l’installation d’Office 2016 à l’aide d’un fichier XML. Je comprends que ce problème vous pose des difficultés.

    J’aimerais vraiment pouvoir m’occuper de votre problème, mais, malheureusement, il dépasse le cadre de l’assistance communautaire. Il est plus approprié de le poster sur Microsoft Learn (en anglais uniquement), où il y a des forums plus avancés et plus d’utilisateurs postant ces problèmes, et où vous pouvez cliquer sur « Poser une question » où des experts peuvent fournir des solutions plus professionnelles.

    Voici un lien vers le forum où vous pouvez proposer des scénarios spécifiques et partager vos idées pour aider à résoudre le problème.

    Office - Microsoft Q&R

    Je suis désolé de devoir vous diriger à nouveau vers un autre forum. J’espère sincèrement que votre problème sera traité correctement après avoir contacté le bon service. Merci de votre compréhension !

    Meilleurs voeux

    Pyke.D | Spécialiste du support communautaire Microsoft

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire