Use o WMI para remover um arquivo de paginação

4

Eu posso modificar as configurações do arquivo de paginação via WMI assim

PS D:\> gwmi win32_pagefilesetting

                            MaximumSize Name                                    Caption
                            ----------- ----                                    -------
                                   8192 c:\pagefile.sys                         c:\ 'pagefile.sys'
                                   8192 d:\pagefile.sys                         d:\ 'pagefile.sys'


PS D:\> $pf=gwmi win32_pagefilesetting
PS D:\> $pf.gettype()

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     Object[]                                 System.Array

PS D:\> $pf[0].InitialSize=4096;$pf[0].MaximumSize=4096
PS D:\> $pf[0].Put()
PS D:\> gwmi win32_pagefilesetting

                            MaximumSize Name                                    Caption
                            ----------- ----                                    -------
                                   4096 c:\pagefile.sys                         c:\ 'pagefile.sys'
                                   8192 d:\pagefile.sys                         d:\ 'pagefile.sys'

Mas como posso remover uma configuração de arquivo de paginação? neste remover o arquivo de pagina em D:?

    
por Andrew J. Brehm 28.11.2013 / 16:48

2 respostas

3

Encontrado.

Existe um método .Delete () que faz o truque.

PS D:\> $pf[1].Delete()
PS D:\> gwmi win32_pagefilesetting

                            MaximumSize Name                                    Caption
                            ----------- ----                                    -------
                                   4096 c:\pagefile.sys                         c:\ 'pagefile.sys'

Feito.

    
por 28.11.2013 / 16:58
1

Embora não seja recomendado por alguns, se você quiser desativar os arquivos de paginação completamente, desabilite também o gerenciamento automático de páginas:

# Disable automatic pagefile management
$cs = gwmi Win32_ComputerSystem
if ($cs.AutomaticManagedPagefile) {
    $cs.AutomaticManagedPagefile = $False
    $cs.Put()
}
# Disable a *single* pagefile if any
$pg = gwmi win32_pagefilesetting
if ($pg) {
    $pg.Delete()
}
    
por 03.10.2014 / 10:47