Komut dosyası güncellendi. Doğrulanmış çalışma ve izin iletişim kutusunu tetiklemiyor.
Windows'un desktop.ini oluşturmasını engellemek mümkün değildir, çünkü bunu yapan Windows aslında değildir. Başka bir üçüncü taraf hizmeti, bu dosyanın oluşturulmasını tetikliyor ve Windows, UseDesktopIniCache = 0'a rağmen buna izin veriyor.
Desktop.ini beni delirtiyordu, bu yüzden bir ragtag çözümü buldum. Desktop.ini dosyasının önyüklemeden birkaç saniye sonra oluşturulduğunu gözlemledim. Bundan faydalandım. Görev Zamanlayıcı'yı kullanarak, önyükleme sırasında Masaüstünde yazma iznini geçici olarak devre dışı bırakıyorum. Bu, üçüncü taraf hizmetlerinin masaüstümde parlak görüntüler gerçekleştirmesini engelliyor. Önyüklemeden bir dakika sonra, başka bir görev Masaüstünde yazma iznini eski durumuna getirir.
Burada Görev Zamanlayıcı iş yapmak için örnek XML dosyaları bir dizi paylaştık.
Komut dosyasının bu sürümü devralmayı devre dışı bırakır
Kalıtımın çok kafa karıştırıcı olduğunu gördüm, bu yüzden Masaüstü klasörü için devre dışı bıraktım. Eğer gerçekten ihtiyacınız varsa / miras: e ikinci senaryoda bir yere ekleyebilirsiniz, ancak mirasın kayıplı bir işlemi devre dışı bırakmanın, bu nedenle bu satırı eklemenin her şeyi eskisi gibi değiştirmeyeceğini unutmayın. Masaüstü bir sistem klasörü değildir, bu nedenle sizi etkilememelidir.
Bu, önyükleme sırasında yazma iznini devre dışı bırakmak içindir:
<?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>
Bu, izni bir dakika sonra eski haline getirmek içindir:
<?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>
Önyükleme sürücümün çok hızlı olmasa da bir SSD olduğunu lütfen unutmayın. Zamanlamalar işletim sisteminizin ne kadar hızlı açıldığına bağlı olarak değişebilir.
Ayrıca, Yazar ve Kullanıcı Kimliği alanlarının varlığı nedeniyle bu komut dosyalarını doğrudan içe aktaramazsınız. Tüm parametreleri not edin.
UseDesktopIniCache=0
(en yanıttan superuser.com/a/650431/523828 , Windows 10 değil iş)?