ParlandoSparlando




IRPStackSize: Errore di memoria insufficiente nel server per eseguire il comando


Registro di WindowsPuo' capitare che tentando di accedere ad una risorsa condivisa di una rete locale l'operazione venga impedita e compaia il seguente messaggio di errore:

"Impossibile accedere a... [cartella in rete]. L'utente potrebbe non disporre dell'autorizzazione necessaria per l'utilizzo della risorsa di rete. Per le autorizzazioni di accesso, contattare l'amministratore del server.

Memoria insufficiente nel server per eseguire il comando.
"



E' un problema correlato alla gestione dei diritti utente, alla configurazione degli account, o a cosa?

Come poterlo risolvere ed accedere quindi alla risorsa condivisa?


Se si va a vedere nel registro degli eventi (Pannello di controllo ==> Strumenti di amministrazione ==> Visualizzatore eventi ==> sezione Sistema) del sistema sul quale erano condivise le risorse, si ritrova un interessante riferimento:

Nei sistemi operativi Microsoft Windows NT, Windows 2000 Server, Windows XP e Windows Server 2003, IRPStackSize e' il parametro che specifica il numero di stack locations nei pacchetti I/O (IRPs) che utilizza il sistema operativo.
Ciascuno stack usa 36 bytes di memoria per ciascun buffer ricevuto; e' possibile incrementarne la capacita'.
Il valore di default di IRPStackSize e' 15
Il parametro di configurazione "IRPStackSize" del server e' troppo piccolo per usare una periferica locale. Incrementare il valore del parametro.

Il problema, dunque, non e' in alcun modo correlato alla gestione dei diritti utente o alla configurazione degli account ma dipende, come indicato, dall'impostazione del parametro IRPStackSize.

Per far questo occorre apportare una piccola modifica al registro di Windows.

Prima pero' di effettuare qualsiasi modifica al registro di Windows e' sempre buona norma effettuare una copia dello stesso.
Se non si sa' come fare leggere il seguente articolo: Copiare il registro di Windows.


Cliccare su START > ESEGUI... e digitare regedit, quindi scegliere OK.

Nella parte sinistra della finestra dell'Editor del registro di sistema che si e' aperta fare DOPPIO click su ognuna delle seguenti voci:

HKEY_LOCAL_MACHINE
System
CurrentControlSet
Services
LanmanServer
Parameters

Nella parte destra della finestra dell'Editor del registro di sistema fare doppio click con il tasto sinistro del mouse sulla voce IRPStackSize

Se non esiste si dovra' crearla.
Per far cio', nella parte destra dell'Editor del registro di sistema, cliccare con il tasto destro del mouse in una parte vuota e quindi, dal menu contestuale che appare, scegliere Nuovo > Valore DWORD e creare una nuova voce dal nome IRPStackSize.
Ora, fare doppio click con il mouse su questa nuova voce.


Nella finestra che si apre, nel campo denominato Dati valore, dopo aver selezionato l'opzione Decimale, sostituire il valore presente con:

15 (leggasi QUINDICI);

Fare click su Ok.

Chiudere l'Editor del registro di sistema e riavviare il computer.

Se non dovesse ancora funzionare, si potra' provare ad aumentare il valore 15 a passi di 3 (esempio: 18, 21, 24 e cosi' via) fino a raggiungere il valore massimo di 32.

Ultimo aggiornamento: 13/02/2010
Copyright © 2000-2012 Parlandosparlando