Desativar a criação do desktop.ini no Windows 10 (na área de trabalho)


25

Gostaria de interromper a criação do arquivo 'desktop.ini' no 'Desktop' da minha máquina com Windows 10. Fiz essa pergunta de maneira específica sobre o Windows 10: existe uma pergunta sobre o mesmo problema no Windows 8 aqui , as soluções propostas lá (e em outros lugares) para o Windows 7 e 8 parecem não funcionar.

Por favor, não há soluções como 'desativar a exibição de arquivos ocultos'. Minha pergunta específica é como parar o arquivo sendo criado na área de trabalho.


Faz UseDesktopIniCache=0(a partir da resposta a superuser.com/a/650431/523828 ) não funciona no Windows 10?
Dxiv 28/11/2015

@dxiv Com medo de não funcionar.
Neil Townsend

Suponho que você fez / verificou a alteração em Software e Software \ Wow6432Node e que você reiniciou depois.
Dxiv

@dxiv Sim ... com medo que eu tenho ...
Neil Townsend

Obrigado pelo seguimento. Menos uma coisa a tentar quando chegar a minha hora "10".
Dxiv

Respostas:


7

(Muito) Edição posterior: Parece que esta solução não funciona mais no Windows10. Deixando a resposta aqui para referência.


Eu usei a solução encontrada aqui :

  • Pressione Win+Re entreregedit
  • Navegar para HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer
  • Edite / crie um novo DWORD: UseDesktopIniCachecom os dados0

Para mim, eu não tinha o valor, então tive que criá-lo. Após a reinicialização, ele criou automaticamente o valor emHKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Policies\Explorer

Executando o Windows 10 Build 14393.222


Por favor, leia Como fazer referência a material escrito por outras pessoas . Você deve bloquear o texto da citação que foi escrito por outra pessoa. Consulte a ajuda do Markdown . Corrigi isso para você neste momento, mas preste atenção nisso no futuro.
DavidPostill

2
Olá, receio que isso não funcione no meu sistema Windows 10, executando a versão mais recente do 10. Mas obrigado por tentar, agradeço.
Neil Townsend

1

Script atualizado. Trabalho verificado e não aciona a caixa de diálogo de permissão.


Não é possível impedir o Windows de criar o desktop.ini, porque na verdade não é o Windows que está fazendo isso. Alguns outros serviços de terceiros estão acionando a criação desse arquivo e, claramente, o Windows permite que, apesar de UseDesktopIniCache = 0.

Desktop.ini estava me deixando louco, então eu vim com uma solução desorganizada. Observei que o arquivo desktop.ini é criado alguns segundos após a inicialização. Eu tirei vantagem disso. Usando o Agendador de tarefas, desabilito temporariamente a permissão de gravação na área de trabalho na inicialização. Isso impede que serviços de terceiros executem travessuras com minha área de trabalho. Um minuto após a inicialização, outra tarefa restabelece a permissão de gravação no Desktop.

Aqui, compartilhei um conjunto de arquivos XML de amostra para o Agendador de tarefas fazer o trabalho.

Esta versão do script desativa a herança

Eu achei a herança muito confusa, portanto a desabilitei para a pasta Desktop. Você pode adicionar / herança: e em algum lugar do segundo script, se realmente precisar, mas observe que desativar a herança é um processo com perdas, portanto, adicionar essa linha não mudará tudo de volta para onde eles estavam antes. A área de trabalho não é uma pasta do sistema, portanto, não deve afetá-lo, independentemente.

Este é para desativar a permissão de gravação na inicialização:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2018-01-09T18:21:14.9818893</Date>
    <Author>spero_LAPTOP\spero</Author>
    <URI>\Desktop Write Permission disable</URI>
  </RegistrationInfo>
  <Triggers>
    <LogonTrigger>
      <ExecutionTimeLimit>PT1M</ExecutionTimeLimit>
      <Enabled>true</Enabled>
    </LogonTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>##################################</UserId>
      <LogonType>Password</LogonType>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>true</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT1M</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /inheritance:d /remove "SYSTEM"</Arguments>
    </Exec>
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /remove "Administrators"</Arguments>
    </Exec>
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /remove "spero"</Arguments>
    </Exec>
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /grant "Administrators":(OI)(GR)</Arguments>
    </Exec>
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /grant "spero":(OI)(GR)</Arguments>
    </Exec>
  </Actions>
</Task>

Este é para restabelecer a permissão um minuto depois:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2018-01-09T18:19:03.2968461</Date>
    <Author>spero_LAPTOP\spero</Author>
    <URI>\Desktop Write Permission</URI>
  </RegistrationInfo>
  <Triggers>
    <LogonTrigger>
      <ExecutionTimeLimit>PT1M</ExecutionTimeLimit>
      <Enabled>true</Enabled>
      <Delay>PT1M</Delay>
    </LogonTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>######################################</UserId>
      <LogonType>Password</LogonType>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>true</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT1M</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /grant "Administrators":F</Arguments>
    </Exec>
    <Exec>
      <Command>ICACLS</Command>
      <Arguments>"C:\Users\spero\Desktop" /grant "spero":F</Arguments>
    </Exec>
  </Actions>
</Task>

Observe que minha unidade de inicialização é um SSD, embora não seja muito rápido. Os horários podem variar dependendo da rapidez com que o sistema operacional é inicializado.

Além disso, você não pode importar esses scripts diretamente devido à presença dos campos Autor e ID do usuário. Apenas tome nota de todos os parâmetros.


Atualização: Depois de usar a solução acima um pouco e ter que lidar com milhares de mensagens "No momento, você não tem permissão para acessar esta pasta", o que acabou sendo um incômodo maior que os arquivos desktop.ini, agora recomendo alterar o comando para ICACLS "C: \ Users \ Spero \ Desktop" / negar "Administradores" :( WD). Eu atualizei o script acima de acordo.
Spero 31/01

-1

[Resposta anterior excluída] Opa, desculpe por isso. Já faz um tempo e confundi com thumbs.db

Em vez disso, tente os arquivos desktop.ini: Abra o editor de registro e navegue para: HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Policies \ Explorer Altere o valor UseDesktopIniCache para 0 (adicione-o como um valor DWORD se ele ainda não existir.

Aqui estão alguns links para as postagens de outras pessoas que estavam trabalhando para elas. A maioria estava com as vitórias 7 e 8, no entanto.


Com medo de que isso não funcione, desculpe.
Neil Townsend

Opa, desculpe por isso. Já faz um tempo e confundi-o com o thumbs.db Atualizei com uma resolução que tentei e está trabalhando para mim. De uma chance.
Thor

Obrigado por tentar, mas não funciona. Nenhum dos métodos do Windows 7/8 que eu encontrei lá funciona! Vou deixar a pergunta mais clara.
Neil Townsend

Entendido, obrigado por verificar e desculpe, não funcionou.
Thor

-2

É melhor não excluir o arquivo desktop.ini, pois a pasta exige que o arquivo .ini seja executado corretamente. Um arquivo Desktop.ini é um arquivo que determina a maneira como uma pasta é exibida pelo Windows. Se você quiser, no entanto, ative a exibição de arquivos ocultos e clique com o botão direito do mouse e pressione Excluir para excluir o item.


4
Eu tenho arquivos ocultos visíveis o tempo todo. Eu regularmente excluo este arquivo e tudo funciona muito bem. Mas depois de um tempo é recriado. De acordo com a pergunta, quero impedir que ele seja criado. Como eu faço isso?
Neil Townsend

11
A resposta está correta. É um arquivo de sistema executando uma função do sistema. O Windows o recria porque sabe que deve tê-lo. Suas soluções são: Esconda-o. Ignore isto. Solicite que a MS altere radicalmente o sistema operacional na próxima versão ou interrompa o uso do Windows.
Linef4ult

3
Embora essa seja a linha oficial deleting it may cause the folder to be problematic, também é enganosa. Você pode citar um efeito nocivo ao excluir desktop.ini?
Dxiv 28/11/2015

Fiz mais algumas pesquisas, sem efeitos negativos, mas é melhor deixá-lo em paz.
potatoman

-3

Eu sei que você disse "pare de ser criado". Suponho que é porque você deseja que os arquivos do sistema sejam visíveis e o desktop.ini (e provavelmente o thumbs.db) simplesmente não esteja presente. A solução a seguir não impede a criação, mas oculta os arquivos do sistema somente na área de trabalho, e não em todo o sistema. Talvez isso seja aceitável.

  • Selecione "Área de trabalho" no Windows Explorer
  • Clique no separador "Ver"
  • Desmarque "Itens ocultos" em "Mostrar / ocultar" na faixa de opções

Eu tenho essa solução aqui: http://searchenterprisedesktop.techtarget.com/blog/Windows-Enterprise-Desktop/Settings-Reset-in-Windows-10-Reinforces-Desktopini-Trick


No entanto, apesar do que diz o artigo, isso também impede que itens ocultos sejam visíveis em todos os lugares. É uma opção para todo o sistema, pelo menos quando eu tentei!
Neil Townsend

@GollyRojer .. votou negativamente sua "resposta" porque você não entende completamente o problema. Tudo o que você propôs é ocultar algo, na verdade não impedir que o sistema operacional os crie. Além disso, sua sugestão causa problemas para aqueles que tomaram medidas explicitamente para mostrar todos os arquivos. Escondê-los, é semelhante a varrer uma pilha de sujeira sob o tapete. fora de vista, mas a sujeira ainda está lá.
TG2 23/04

TG2, você leu meu post? Há alguma falta de entendimento acontecendo aqui, mas não é da minha parte.
GollyRojer
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.