From 32cbd9d522c131367f6600956f93f5152bdbddc5 Mon Sep 17 00:00:00 2001 From: cousclou Date: Fri, 9 Aug 2024 18:48:28 +0200 Subject: [PATCH] gpo,rmm,intune + cert --- driverv2/add_printers.ps1 | 48 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 driverv2/add_printers.ps1 diff --git a/driverv2/add_printers.ps1 b/driverv2/add_printers.ps1 new file mode 100644 index 0000000..6aa5b47 --- /dev/null +++ b/driverv2/add_printers.ps1 @@ -0,0 +1,48 @@ +Start-Transcript -Path c:\windows\temp\printers.log +# Chemin vers le certificat du fournisseur en format .cer +$cheminCertificat = ".\efi.cer" + +try { + # Importer le certificat du fournisseur dans le magasin de certificats "Éditeurs de logiciels de confiance" + Import-Certificate -FilePath $cheminCertificat -CertStoreLocation Cert:\LocalMachine\TrustedPublisher + + Write-Host "Le certificat a été importé avec succès dans les éditeurs de logiciels de confiance." +} catch { + Write-Host "Une erreur s'est produite lors de l'importation du certificat : $($_.Exception.Message)" +} +#Read printers.csv as input +$Printers = Import-Csv .\drivers.csv + +#Add all printer drivers by scanning for the .inf files and installing them using pnputil.exe +$infs = get-childitem -Path . -Filter "*.inf" -Recurse -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Fullname + +$totalnumberofinfs = $infs.Count +$currentnumber = 1 +Write-Host ("[Install printer driver(s)]`n") -ForegroundColor Green +Foreach ($inf in $infs) { + Write-Host ("[{0}/{1}] Adding inf file {2}" -f $currentnumber, $totalnumberofinfs, $inf) -ForegroundColor Green + try { + c:\windows\sysnative\Pnputil.exe /a $inf | Out-Null + } + catch { + try { + c:\windows\system32\Pnputil.exe /a $inf | Out-Null + } + catch { + C:\Windows\SysWOW64\pnputil.exe /a $inf | Out-Null + } + } + $currentnumber++ +} + +#Add all installed drivers to Windows using the CSV list for the correct names +$totalnumberofdrivers = ($printers.drivername | Select-Object -Unique).count +$currentnumber = 1 +Write-Host ("`n[Add printerdriver(s) to Windows]") -ForegroundColor Green +foreach ($driver in $printers.drivername | Select-Object -Unique) { + Write-Host ("[{0}/{1}] Adding printerdriver {2}" -f $currentnumber, $totalnumberofdrivers, $driver) -ForegroundColor Green + Add-PrinterDriver -Name $driver + $currentnumber++ +} + +Stop-Transcript \ No newline at end of file