AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1423464
Accepted
acgbox
acgbox
Asked: 2019-04-10 11:56:12 +0800 CST2019-04-10 11:56:12 +0800 CST 2019-04-10 11:56:12 +0800 CST

Ativar ou desativar o cache de gravação de disco no Windows 10/8/7 com uma tecla reg/linha de comando

  • 772

De acordo com a Microsoft, no Windows 10/8/7, para ativar ou desativar o cache de gravação de disco :

  1. Clique com o botão direito do mouse em Meu computador e clique em Propriedades.
  2. Clique na guia Hardware e, em seguida, clique em Gerenciador de dispositivos.
  3. Expanda Unidades de Disco.
  4. Clique com o botão direito do mouse na unidade na qual deseja ativar ou desativar o cache de gravação de disco e clique em Propriedades.
  5. Clique na guia Políticas.
  6. Clique para marcar ou desmarcar a caixa de seleção Ativar cache de gravação no disco, conforme apropriado.
  7. Clique OK.

insira a descrição da imagem aqui

Como posso ativar ou desativar o cache de gravação de disco com uma chave de registro (regedit)/linha de comando? (para automatizar o processo em vários PCs)

PD: Existe uma opção em C/C++ , mas está desatualizada ou não aplicável. O mesmo se aplica ao método usado pelo dskcache .

window regedit
  • 2 2 respostas
  • 6532 Views

2 respostas

  • Voted
  1. Best Answer
    ynaka
    2019-05-11T05:46:42+08:002019-05-11T05:46:42+08:00

    Parece que um diskcache.exe antigo, distribuído pela Microsoft, foi perdido. Experimente uma ferramenta compatível, feita por mim há muito tempo.

    https://www.vector.co.jp/soft/winnt/hardware/se487753.html

    Para ativar o cache de gravação no disco 0,

    .\diskcach 0 -w 1
    

    Desabilitar

    .\diskcach 0 -w 0
    

    Pode exigir o pacote redistribuível MSVC++ 2008 SP1.

    • 2
  2. farag
    2021-03-03T02:45:01+08:002021-03-03T02:45:01+08:00

    Eu criei uma função para habilitar/desabilitar o cache do disco de gravação apenas para a unidade do sistema. Reinicie necessário.

    Link permanente: https://github.com/farag2/Utilities/blob/master/Enable_disk_write_caching.ps1

    <#
        .SYNOPSIS
        Configure the disk write caching
    
        .PARAMETER Disable
        Disable the disk write caching
    
        .PARAMETER Enable
        Enable the disk write caching
    
        .EXAMPLE
        DiskWriteCaching -Disable
    
        .EXAMPLE
        DiskWriteCaching -Enable
    
        .NOTES
        Current user
    #>
    function DiskWriteCaching
    {
        param
        (
            [Parameter(
                Mandatory = $true,
                ParameterSetName = "Disable"
            )]
            [switch]
            $Disable,
    
            [Parameter(
                Mandatory = $true,
                ParameterSetName = "Enable"
            )]
            [switch]
            $Enable
        )
    
        # Get system drive ID regardless of the port number
        $Index = (Get-Partition | Where-Object -FilterScript {$_.DriveLetter -eq $env:SystemDrive[0]}).DiskNumber
        $SystemDriveID = (Get-CimInstance -ClassName CIM_DiskDrive | Where-Object -FilterScript {$_.Index -eq $Index}).PNPDeviceID
        # Get system drive instance
        $PSPath = (Get-ChildItem -Path HKLM:\SYSTEM\CurrentControlSet\Enum\SCSI | Where-Object -FilterScript {$SystemDriveID -match $_.PSChildName}).PSPath
        # We need to go deeper... LeonardoDiCaprio.jpg
        $PSPath = (Get-ChildItem -Path $PSPath | Where-Object -FilterScript {$SystemDriveID -match $_.PSChildName}).PSPath
    
        # Check whether disk write caching is enabled
        $IsDeviceCacheEnabled = (Get-StorageAdvancedProperty -PhysicalDisk (Get-PhysicalDisk | Where-Object -FilterScript {$_.DeviceID -eq $Index})).IsDeviceCacheEnabled
    
        switch ($PSCmdlet.ParameterSetName)
        {
            "Disable"
            {
                if ($IsDeviceCacheEnabled)
                {
                    if (-not (Test-Path -Path "$PSPath\Device Parameters\Disk"))
                    {
                        # Create "Disk" folder
                        New-Item -Path "$PSPath\Device Parameters\Disk" -Force
                    }
    
                    # Disable disk write caching
                    New-ItemProperty -Path "$PSPath\Device Parameters\Disk" -Name UserWriteCacheSetting -PropertyType DWord -Value 0 -Force
                    New-ItemProperty -Path "$PSPath\Device Parameters\Disk" -Name CacheIsPowerProtected -PropertyType DWord -Value 0 -Force
                }
            }
            "Enable"
            {
                if (-not $IsDeviceCacheEnabled)
                {
                    if (-not (Test-Path -Path "$PSPath\Device Parameters\Disk"))
                    {
                        # Create "Disk" folder
                        New-Item -Path "$PSPath\Device Parameters\Disk" -Force
                    }
    
                    # Enable disk write caching
                    New-ItemProperty -Path "$PSPath\Device Parameters\Disk" -Name UserWriteCacheSetting -PropertyType DWord -Value 1 -Force
                    New-ItemProperty -Path "$PSPath\Device Parameters\Disk" -Name CacheIsPowerProtected -PropertyType DWord -Value 0 -Force
                }
            }
        }
    
        Write-Warning "Make sure to restart your PC!"
    }
    
    # DiskWriteCaching -Disable
    # DiskWriteCaching -Enable
    
    • 1

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    Serviço do Windows 10 chamado AarSvc_70f961. O que é e como posso desativá-lo?

    • 2 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Marko Smith

    ssl.SSLCertVerificationError: falha na verificação do certificado [SSL: CERTIFICATE_VERIFY_FAILED]: não foi possível obter o certificado do emissor local (_ssl.c:1056)

    • 4 respostas
  • Marko Smith

    Como posso saber em qual unidade o Windows está instalado?

    • 6 respostas
  • Martin Hope
    Albin Como faço para ativar o WindowsXP agora que o suporte acabou? 2019-11-18 03:50:17 +0800 CST
  • Martin Hope
    fixer1234 O "HTTPS Everywhere" ainda é relevante? 2019-10-27 18:06:25 +0800 CST
  • Martin Hope
    Kagaratsch O Windows 10 exclui muitos arquivos minúsculos muito lentamente. Algo pode ser feito para agilizar? 2019-09-23 06:05:43 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    Inter Sys Como Ctrl+C e Ctrl+V funcionam? 2019-05-15 02:51:21 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve