Microsoft Access si blocca dopo l’aggiornamento 2408 (build 16.0.17928.20114): cause, soluzione ufficiale e work‑around

Microsoft Access ha mostrato blocchi e instabilità diffuse dopo l’aggiornamento Versione 2408 (build 16.0.17928.20114) di fine agosto 2024. In questa guida trovi una spiegazione chiara del problema, i work‑around immediati, la correzione ufficiale e una strategia operativa per prevenire ricadute.

Indice

Blocco e instabilità di Microsoft Access dopo l’aggiornamento 2408

L’aggiornamento 2408 ha introdotto un difetto critico in Access che si manifesta con arresti anomali e chiusure incomplete del processo. Il comportamento è subdolo perché colpisce sia database complessi sia file vuoti, anche in sola lettura, e spesso lascia l’eseguibile di Access in background, bloccando i file e impedendo la chiusura ordinata delle applicazioni.

Sintomi tipici osservati

  • Messaggi di errore casuali, ad esempio “Out of stack memory”, finestre di errore non riproducibili e arresti improvvisi.
  • Impossibilità di compattare o chiudere il database: l’operazione “Compatta e ripristina” resta bloccata o non si completa.
  • File ACCDB/LACCDB bloccati: il file di lock .laccdb non viene rimosso e impedisce nuove aperture.
  • Processo residuo in background: MSACCESS.EXE resta attivo anche dopo la chiusura della finestra, causando lock fantasma e consumo di risorse.

Ambito e condizioni interessate

  • Tutte le applicazioni Access: database esistenti, nuovi file vuoti e, spesso, anche file aperti in sola lettura.
  • Origine: aggiornamento di Microsoft 365 rilasciato a fine agosto 2024 nel Current Channel (Versione 2408, build 16.0.17928.20114).
  • Piattaforme: istanze di Access installate tramite Click‑to‑Run (Microsoft 365 Apps). Il problema non è legato al codice del singolo database, ma al binario di Access/ACE.

Come verificare se sei interessato

Prima di intervenire, verifica la build installata:

  1. Apri una qualsiasi app di Office (es. Access o Word).
  2. Vai su File → Account e controlla Informazioni sul prodotto.
  3. Se vedi Versione 2408 con build 16.0.17928.20114, sei potenzialmente esposto al bug.

In alternativa, puoi controllare rapidamente da prompt o PowerShell:

REM Prompt dei comandi (Click-to-Run)
reg query "HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" /v VersionToReport

PowerShell (esecuzione come amministratore consigliata)

(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration").VersionToReport </code></pre>

<h2>Work‑around temporanei</h2>
<p>Se devi ripristinare subito la produttività, applica uno di questi percorsi rapidi.</p>

<table>
  <thead>
    <tr>
      <th>Obiettivo</th>
      <th>Azione rapida</th>
      <th>Note operative</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Evitare il bug immediatamente</td>
      <td>Rollback di Office alla build <strong>16.0.17726.20160</strong> (luglio 2024) o altra versione stabile nota</td>
      <td>
        1. Disattivare gli aggiornamenti automatici in Office.<br>
        2. Eseguire da prompt elevato:<br>
        <code>cd "%programfiles%\Common Files\Microsoft Shared\ClickToRun"</code><br>
        <code>officec2rclient.exe /update user updatetoversion=16.0.17726.20160</code>
      </td>
    </tr>
    <tr>
      <td>Usare comunque Access in emergenza</td>
      <td>Applicare i work‑around suggeriti dalla community (chiusura forzata processi fantasma, avvio in modalità provvisoria, disabilitazione componenti aggiuntivi)</td>
      <td>Utile se non è possibile il rollback (es. PC aziendali gestiti); vedi sezione “Uso di Access in emergenza”.</td>
    </tr>
    <tr>
      <td>Verificare se il problema è locale</td>
      <td>Riparazione di Office, avvio pulito, test con nuovo profilo utente</td>
      <td>Di norma non risolve il bug originario, ma aiuta a escludere conflitti di sistema o profilazione.</td>
    </tr>
    <tr>
      <td>Restare informati</td>
      <td>Monitorare pagine dedicate ai bug di Access e community tecniche</td>
      <td>Per aggiornamenti puntuali sullo stato della correzione e best practice.</td>
    </tr>
  </tbody>
</table>

<h3>Rollback dettagliato con Click‑to‑Run</h3>
<ol>
  <li>Chiudi tutte le app di Office e <strong>salva il lavoro</strong>.</li>
  <li>Disabilita gli aggiornamenti automatici: <strong>File → Account → Opzioni aggiornamento → Disabilita aggiornamenti</strong>.</li>
  <li>Apri il <strong>Prompt dei comandi come amministratore</strong> ed esegui:
    <pre><code>cd "%programfiles%\Common Files\Microsoft Shared\ClickToRun"
officec2rclient.exe /update user updatetoversion=16.0.17726.20160

Attendi il completamento, riavvia il PC (caldamente consigliato) e verifica la build in File → Account.
Opzionale: blocca temporaneamente gli aggiornamenti automatici fino al rilascio di una build corretta.

Rollback con Office Deployment Tool (ODT), utile per ambienti gestiti

Per orchestrare il rollback su più postazioni:

  1. Prepara un file di configurazione ODT che fissi la versione desiderata (es. 16.0.17726.20160) e il canale di aggiornamento.
  2. Esegui il setup ODT con privilegi amministrativi sui client interessati.

Esempio di configurazione (estratto) per configuration.xml:

&lt;Configuration&gt;
  &lt;Add OfficeClientEdition="64" Channel="Current"&gt;
    &lt;Product ID="O365ProPlusRetail"&gt;
      &lt;Language ID="it-it" /&gt;
    &lt;/Product&gt;
  &lt;/Add&gt;
  &lt;Updates Enabled="TRUE" Channel="Current" TargetVersion="16.0.17726.20160" /&gt;
  &lt;Display Level="None" AcceptEULA="TRUE" /&gt;
&lt;/Configuration&gt;

Nota: adatta OfficeClientEdition, Product ID e lingua al tuo ambiente (Microsoft 365 Apps/Business/Enterprise). In aziende con Gestione dispositivi, valuta Criteri di gruppo o strumenti di distribuzione per fissare canale e versione.

Uso di Access in emergenza (se il rollback non è possibile)

  • Termina i processi fantasma prima di riaprire il database: taskkill /F /IM MSACCESS.EXE
  • Rimuovi i lock file residui quando sei certo che nessuno stia usando il database: del "X:\Percorso\al\database\*.laccdb"
  • Avvia Access in modalità provvisoria per escludere add‑in/COM: msaccess.exe /safe
  • Disabilita componenti aggiuntivi: File → Opzioni → Componenti aggiuntivi, gestisci Componenti COM e Componenti aggiuntivi di Access.
  • Avvio pulito di Windows: carica solo servizi Microsoft per minimizzare conflitti di terze parti.
  • Riparazione di Office: App e funzionalità → Microsoft 365 Apps → Modifica → Ripristino online.
  • Decompile del progetto VBA (utile per eliminare cache compilate): msaccess.exe /decompile "X:\Percorso\al\database.accdb"
  • Compattazione/riparazione dopo la riapertura: File → Informazioni → Compatta e ripristina database.

Correzione ufficiale Microsoft

Microsoft ha risolto il problema con un aggiornamento correttivo rilasciato pochi giorni dopo la segnalazione iniziale.

Data pubblicazioneCanaleBuildStato
10 settembre 2024Current16.0.17928.20156Fix rilasciato: risolve il processo che non si chiude e gli errori di memoria.
Ottobre 2024 in poiMonthly Enterprise & Semi‑AnnualvarieLa correzione confluisce nei canali a rilascio differito; aggiornare non appena disponibile.

Passi consigliati per applicare la correzione

  1. Riabilita gli aggiornamenti automatici se precedentemente disattivati.
  2. Forza la ricerca di update in una app Office: File → Account → Opzioni aggiornamento → Aggiorna adesso.
  3. Verifica la build installata in File → Account: deve essere ≥ 16.0.17928.20156.
  4. Compatta e ripara i database interessati per rimuovere eventuali flag di blocco residui e rigenerare indici/statistiche.

Percorso di risoluzione consigliato, passo‑passo

  1. Identifica la versione di Office (build e canale). Se è 16.0.17928.20114, procedi subito.
  2. Stabilisci la finestra d’intervento (fuori orario lavoro) per evitare conflitti con altri utenti in rete.
  3. Esegui backup dei file .ACCDB/.MDB e delle eventuali librerie collegate.
  4. Applica il fix aggiornando a 16.0.17928.20156 o superiore (preferibile); in alternativa rollback a 16.0.17726.20160.
  5. Riavvio completo della macchina e verifica che MSACCESS.EXE non resti in background.
  6. Compatta/Ripara i database interessati; elimina i .laccdb orfani.
  7. Smoke test: apri un file vuoto, uno di produzione e uno in sola lettura; verifica operazioni tipiche (apertura/chiusura, moduli, report, macro).
  8. Monitoraggio per 24–48 ore: controlla Visualizzatore eventi e Affidabilità di Windows per eventuali errori residui.

Diagnosi: come raccogliere evidenze utili

  • Event ViewerRegistri di Windows → Applicazione: filtra per sorgenti Application Error, .NET Runtime (se usi componenti .NET), VBA e MSACCESS.EXE.
  • Registro affidabilità (Storia affidabilità): individua crash, hang e aggiornamenti installati nel periodo di interesse.
  • Task Manager: verifica la persistenza di MSACCESS.EXE e l’eventuale consumo anomalo di CPU/Memoria dopo la chiusura dell’app.
  • Lock residuali: controlla la presenza di .laccdb in cartelle locali o condivise; se il file è presente mentre MSACCESS.EXE è chiuso, sei davanti a un lock orfano.
  • Test con file vuoto: crea un Nuovo database, apri/chiudi più volte; se il problema si ripete, la causa è la build di Access, non il tuo codice.

Raccomandazioni operative a lungo termine

  1. Canale di aggiornamento: se Access è mission‑critical, valuta il passaggio dal Current Channel al Monthly Enterprise o Semi‑Annual Enterprise, che ricevono versioni più testate.
  2. Backup & versioning: automatizza backup giornalieri dei file ACCDB/MDB e mantieni copie versionate; ricorda che un rollback di Office non ripara corruzioni già avvenute.
  3. Controllo preliminare: prima di installare una nuova “Version 24xx” su macchine di produzione, prova su un PC di staging con carichi realistici.
  4. Monitoraggio community: iscriviti a fonti affidabili su bug critici di Access per ricevere alert tempestivi e best practice operative.
  5. Segmentazione per anelli: distribuisci aggiornamenti per fasi (“ring deployment”): pilota → early adopters → platea completa.
  6. Documentazione interna: mantieni un runbook con procedure di rollback, script e checklist; riduce tempi di fermo nelle emergenze.

Domande frequenti (FAQ)

Il problema dipende dal mio database o dalla versione di Access?

Dai sintomi aggregati risulta legato alla build 16.0.17928.20114 di Access (parte della Versione 2408 di Microsoft 365 Apps), non al codice specifico di un database. File vuoti o in sola lettura presentano lo stesso comportamento.

La compattazione/riparazione risolve in modo definitivo?

No. È utile per rimuovere lock residui e deframmentare il file, ma la risoluzione definitiva richiede l’aggiornamento a una build corretta o il rollback a una versione precedente alla 2408.

È coinvolto anche Access Runtime?

Sì, quando il runtime condivide i binari problemativi; esegui le stesse verifiche di versione e applica fix/rollback come per la suite completa.

Posso mitigare disabilitando componenti aggiuntivi?

La disattivazione può ridurre il numero di crash in alcuni scenari, ma non elimina la radice del problema se la build di Access è affetta. Rimane una misura di emergenza.

Conviene passare a 64‑bit per evitare il bug?

No. Il difetto non è legato alla sola architettura 32/64‑bit; la variabile determinante è la build. Aggiorna oltre la 16.0.17928.20156 o torna a una versione stabile.

Checklist operativa pronta all’uso

  • ✅ Verifica build in File → Account o via registro/PowerShell.
  • ✅ Decidi: aggiorna (≥ 16.0.17928.20156) o rollback (16.0.17726.20160).
  • ✅ Chiudi Office, taskkill /F /IM MSACCESS.EXE, elimina .laccdb orfani.
  • ✅ Riavvio del PC; Compatta/Ripara i database principali.
  • ✅ Esegui uno smoke test su file vuoto, produzione e sola lettura.
  • ✅ Riattiva aggiornamenti automatici e monitora canali deferred in azienda.
  • ✅ Aggiorna il runbook IT con le lezioni apprese.

Appendice: comandi e script utili

Chiudere brute‑force i processi di Access

taskkill /FI "IMAGENAME eq MSACCESS.EXE" /F

Verificare velocemente la versione Click‑to‑Run

for /f "tokens=2,*" %a in ('reg query "HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" /v VersionToReport ^| find "VersionToReport"') do @echo %b

Forzare aggiornamento alla build corretta (o superiore)

cd "%programfiles%\Common Files\Microsoft Shared\ClickToRun"
officec2rclient.exe /update user

Impostare il canale di aggiornamento con ODT (estratto)

&lt;Updates Enabled="TRUE" Channel="MonthlyEnterprise" TargetVersion="" /&gt;

Nota: lascia vuoto TargetVersion per ricevere l’ultima build stabile del canale; imposta TargetVersion se vuoi “pinnare” una versione specifica durante una finestra di stabilizzazione.

In breve

  • Il malfunzionamento di Access è stato causato dalla build 16.0.17928.20114 della Versione 2408.
  • Nell’immediato, la community ha suggerito work‑around come rollback, chiusura forzata dei processi e disabilitazione degli add‑in.
  • Microsoft ha corretto il problema nella build 16.0.17928.20156 (10 settembre 2024).
  • Aggiornare Office a una build ≥ 16.0.17928.20156 oppure tornare a una versione pre‑2408 elimina l’errore.
  • Per prevenire disagi futuri, adotta canali deferred, staging dei rilasci e backup regolari dei database.

Modello di comunicazione interna verso gli utenti

Puoi copiare e adattare il seguente testo per informare i colleghi:

Oggetto: Problemi con Microsoft Access – intervento in corso
Abbiamo identificato blocchi di Microsoft Access dovuti a un aggiornamento di Office 2408 (build 16.0.17928.20114). Stiamo applicando l’aggiornamento correttivo/rollback. Nel frattempo, se Access non si chiude, chiudere tutti i documenti, attendere 1–2 minuti, quindi riaprire. Evitare operazioni di compattazione fino alla fine dell’intervento. Seguirà notifica di ripristino.

Politiche consigliate per ambienti aziendali

  • Definisci un canale “Pilota” su poche macchine rappresentative; i rilasci “Current” vengono provati qui per 7–14 giorni.
  • Produzione su Monthly Enterprise o Semi‑Annual, sincronizzati con finestre di change management e con snapshot pre‑update.
  • Metriche SLO: tempo massimo di ripristino da regressioni Office (es. 4 ore), tempo di rollback coordinato (es. 1 ora), frequenza massima di update in produzione (es. mensile).
  • Automazione: script di verifica build e “drift” di canale, con report notturno a IT.

Indicatori che il problema è stato risolto

  • Apertura/chiusura di database ripetute senza lock .laccdb persistenti.
  • Nessun MSACCESS.EXE presente in background dopo la chiusura.
  • Compattazione/riparazione che si conclude regolarmente.
  • Nessun errore “Out of stack memory” o simili nei log applicativi entro 48 ore dall’aggiornamento.

Template di test rapido post‑update

  1. File vuoto: crea/apri/chiudi 10 volte, poi compatta.
  2. File di produzione: apri moduli/maschere principali, esegui query pesanti, stampa 1–2 report.
  3. Scenario multi‑utente su share: due client aprono lo stesso file in lettura; verifica lock e rilascio.
  4. Runtime: esegui la stessa batteria di test sull’ambiente runtime.
  5. Log: controlla Event Viewer per crash/hang.

Conclusione — Il bug introdotto nella build 16.0.17928.20114 ha esposto molte installazioni di Access a blocchi e processi zombie. La build 16.0.17928.20156 ha rimosso la causa principale. Se non l’hai già fatto, aggiorna subito a una versione ≥ 20156 o effettua rollback a una release stabile precedente, quindi compattazione/riparazione e monitoraggio. Per il futuro, adotta canali di aggiornamento a rilascio differito, staging e backup: sono gli alleati migliori contro regressioni di questo tipo.


Metadati

Indice