Pagina 2 di 2

Re: [RISOLTO] Pacchetto di configurazione del BIOS DELL

Pubblicato: 30 novembre 2023 - 16:02
di gaelds
Grazie Simon!

Ecco il mio codice per chi fosse interessato. L'ho testato su alcuni modelli Dell con password del BIOS, senza password e con password sconosciuta. Durante i test, ho riscontrato tre diversi codici di errore quando la password del BIOS era vuota: 65, 106 e 146.

Codice: Seleziona tutto

# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
cctk_binaries = makepath(programfiles32,'Dell','Command Configure','X86_64','cctk.exe')

def install():
    import wmi
    c = wmi.WMI()
    for computersystem in c.Win32_ComputerSystem():
        if(computersystem.Manufacturer == "Dell Inc."):
            if(isfile(cctk_binaries)):
                print(r'Configuration BIOS Dell avec pass')
                result = run (r'"%s" -i cctk.ini --valsetuppwd=monpassword -l c:\dell_cctk.log' %cctk_binaries,accept_returncodes=[0,3010,58,106,146,65])
                print(f"Code retour = {result.returncode}.")
                if result.returncode == 58:
                    error(r"Le mot de passe de configuration fourni est incorrect.")
                    exit()
                if (result.returncode == 65 or result.returncode == 146 or result.returncode == 106) :
                    print(r"Le mot de passe BIOS est vide ? Tentative d'ajout du mot de passe BIOS")
                    run (r'"%s" -i cctk.ini --setuppwd=monpassword ' %cctk_binaries,accept_returncodes=[0,3010,58,106,146,65])
                else:
                    print(r'Configuration BIOS Dell avec pass')
                    run (r'"%s" -i cctk.ini --valsetuppwd=monpassword -l c:\dell_cctk.log' %cctk_binaries,accept_returncodes=[0,3010,58,106,146,65])
            else:
                error(r"Dell Command and configure ne semble pas installé.")
                exit()
        else:
            print(r"Ce n'est pas un PC DELL. Marque = %s)" %computersystem.Manufacturer)
E il mio file cctk.ini si presenta così:

Codice: Seleziona tutto

[cctk]
WakeOnLan=LanWithPxeBoot
AcPwrRcvry=Last
BlockSleep=Enabled
DeepSleepCtrl=Disabled
EmbNic1=EnabledPxe
NumLock=Enabled
SetupPwd=monpassword
TpmSecurity=Enabled
UefiBootPathSecurity=Never
UsbWake=Disabled