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 / 1843873
Accepted
Michael McLaughlin
Michael McLaughlin
Asked: 2024-05-27 20:16:53 +0800 CST2024-05-27 20:16:53 +0800 CST 2024-05-27 20:16:53 +0800 CST

O Windows 11 parece ter desativado todas as maneiras de contornar as reinicializações da atualização automática. Existe uma solução alternativa?

  • 772

Eu executo simulações do Matlab que às vezes levam semanas para terminar e quando o Windows reinicia, perco todo o meu trabalho, então realmente preciso de uma maneira de interromper as reinicializações automáticas.

O Windows 11 parece ter desativado todas as maneiras de contornar as reinicializações da atualização automática. Ainda existe uma solução alternativa?

Costumava ser possível definir NoAutoRebootWithLoggedOnUsers em:

Computador\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU

se você também definir AUOptions como 4 no mesmo local, mas isso não funciona para mim agora.

windows
  • 3 3 respostas
  • 10639 Views

3 respostas

  • Voted
  1. Best Answer
    Michael McLaughlin
    2024-05-28T16:26:39+08:002024-05-28T16:26:39+08:00

    Como diz @Ramhound, o Windows não reinicia durante o horário de trabalho. Minha solução é executar uma tarefa agendada que altere o horário de trabalho no registro, digamos, a cada uma ou duas horas, para que nunca deixe de ser um horário de trabalho. Codifiquei este programa de arquivo em lote de linha de comando cmd:

    for /f %%i in ('powershell "((get-date).Hour+18) %% 24"') do set startHour=%%i
    for /f %%i in ('powershell "((get-date).Hour+12) %% 24"') do set endHour=%%i
    
    reg add HKLM\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings /v ActiveHoursStart /t REG_DWORD /d %startHour% /f 
    reg add HKLM\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings /v ActiveHoursEnd /t REG_DWORD /d %endHour% /f  
    

    Usei o Agendador de Tarefas do Windows para fazer esse script .bat ser executado a cada hora.

    Agendador de tarefas

    Instalei uma atualização que requer reinicialização em 31 de maio de 2024 às 15h UTC. Fui informado que este reinício ocorrerá fora do horário de trabalho. De 2 de junho às 22h UTC, 55 horas depois, nenhuma reinicialização ocorreu.

    EDIT: descobri como incorporar a sugestão de @Jonathan. É mais fácil fazer matemática do módulo (e obter horas independentes de localidade) com comandos do PowerShell. Ainda é um arquivo em lote cmd, mas chama o PowerShell. Reduz o código para 4 linhas e deve funcionar em qualquer lugar.

    • 25
  2. Guanyuming He
    2024-05-28T15:31:05+08:002024-05-28T15:31:05+08:00

    Na verdade, o Windows possui uma API que permite que um processo que possui uma janela bloqueie o desligamento do sistema indefinidamente até que o usuário escolha manualmente o que fazer a seguir. (possivelmente, como @ josh3736 apontou, o Windows Update pode quebrar isso eventualmente. Mas eu pessoalmente não experimentei um caso concreto disso. Pelo menos deve ser seguro bloquear um desligamento quando você dorme até acordar, e então você apenas clique em cancelar para cancelar o desligamento)

    https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-shutdownblockreasoncreate

    ShutdownBlockReasonCreatefunção (winuser.h)

    Indica que o sistema não pode ser encerrado e define uma sequência de motivos a ser exibida ao usuário se o encerramento do sistema for iniciado.

    Observe que chamar isso sozinho não pode bloquear um desligamento/reinicialização com êxito. Você também precisa do seu aplicativo para lidar com as mensagens WM_QUERYENDSESSIONe WM_ENDSESSION. Vou discuti-los no final.

    Se você não é um desenvolvedor e não sabe como usar a API do Windows, pode usar um pequeno programa que escrevi anos atrás exatamente para o mesmo propósito: https://github.com/real-guanyuming-he/ShutdownBlocker

    De qualquer forma, quando você criar com êxito um motivo de bloqueio de desligamento, o Windows fará uma pausa quando um desligamento (incluindo uma reinicialização de atualização) for emitido e exibirá isso para você, onde você pode clicar em Cancelar para cancelar o desligamento. insira a descrição da imagem aqui

    Nota: Se você não tem controle sobre seu programa de simulações Matlab (eu não uso Matlab, então não sei se é possível), então pode ou não funcionar, dependendo de como o Matlab lida com a situação. De acordo com a Microsoft ( https://learn.microsoft.com/en-us/windows/win32/shutdown/shutting-down ),

    Aplicativos com janela e fila de mensagens recebem notificações de desligamento por meio de mensagens WM_QUERYENDSESSIONe WM_ENDSESSION. Esses aplicativos devem retornar TRUE para indicar que podem ser encerrados.

    Se o Matlab optar por retornar TRUE ao receber esta mensagem, ele será fechado, mesmo que o desligamento seja bloqueado desta forma. (E se você chamar a API sem retornar FALSEao receber WM_QUERYENDSESSION, ela não terá êxito, pois seu aplicativo fechará como resultado disso)

    • 16
  3. Kissaki
    2024-05-28T15:16:40+08:002024-05-28T15:16:40+08:00

    A Política de Grupo Configurar Atualizações Automáticas permite impedir a instalação automática de atualizações.

    1. Abrirgpedit.msc
    2. Computador -> Modelos Administrativos -> Componentes do Windows -> Windows Update -> Gerenciar a experiência do usuário final -> Configurar atualizações automáticas (como alternativa, passe por "todas as configurações" se você usa inglês e sabe o nome daqui)
    3. Ativar, definir como (2) apenas notificar

    Especifica se este computador receberá atualizações de segurança e outros downloads importantes por meio do serviço de atualização automática do Windows.

    Esta configuração permite especificar se as atualizações automáticas estão habilitadas neste computador. Se o serviço estiver habilitado, você deverá selecionar uma das quatro opções na configuração de política de grupo:

    2 = Notifique antes de baixar e instalar qualquer atualização.

    Quando o Windows encontrar atualizações aplicáveis ​​a este computador, os usuários serão notificados de que as atualizações estão prontas para download. Depois de acessar o Windows Update, os usuários podem baixar e instalar todas as atualizações disponíveis.

    • 15

relate perguntas

  • Como desativar a aceleração do mouse em um touchpad de precisão do Windows?

  • renomear em massa conjuntos de arquivos de imagem

  • Qual seria o equivalente em lote do argumento "pass" do Python?

  • Comunique-se com o daemon do Docker no Windows

  • atalho do shell da área de trabalho no painel lateral do explorer

Sidebar

Stats

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

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 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

    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
  • Martin Hope
    Vickel O Firefox não permite mais colar no WhatsApp web? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +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
    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