Чи можете ви заборонити інсталяторам створювати ярлики на робочому столі?


8

Я тримаю свій робочий стіл абсолютно вільним від ярликів. Я б краще не вживав заходів для цього.

Відповіді:


0

Я не думаю, що ви можете відключити всі програми від створення ярликів, але я використовую Fences .

Він дозволяє групувати піктограми на робочому столі, але найголовніше, що при подвійному натисканні на робочий стіл він приховує весь предмет, який не знаходиться у парканах.

alt текст


Fences - це платна програма.
користувач598527

4

Немає налаштувань перезапису. Я знаю, що це зупиняє, однак у вас є три варіанти - один небезпечний, той, який обходить обхід і один безпечний!

Небезпечний шлях

Відредагуйте параметри безпеки в таких папках: (Перейдіть на одну папку вгору, клацніть правою кнопкою миші та виконайте властивості)

c:\users\<name>\Desktop

or

%userprofile%\Desktop

and

c:\users\default\Desktop

Далі, перейдіть на вкладку безпеки та натисніть «Змінити». Ви хочете поставити властивість Заборонити як "Змінити", так і "написати". Ви повинні зробити це лише для свого користувача, якщо інсталятор працює під вашим користувачем.

Це полягає в тому, що ви не можете створювати піктограми, але це має працювати.

Безпечний спосіб

Просто видаліть будь-який значок, що генерується при встановленні!

Обхідний шлях

Клацніть правою кнопкою миші будь-де на робочому столі, де немає елементів. Розгорніть параметр перегляду та зніміть прапорець "Показати піктограми робочого столу" ... Це, звичайно, є недоліком того, що у вас не буде жодних піктограм - але якщо цього ви намагаєтеся досягти, це не має значення!


4

Ось простий спосіб використання запланованих завдань, і не потрібно писати спеціальні сценарії чи програми.

Я встановив планове завдання для видалення піктограм. Це дещо недосконало, оскільки він працює періодично (і після встановлення MSI завершено), але він працює (і після його використання протягом 6 місяців: він працює досить добре). Він видаляє посилання безпосередньо на робочому столі як поточного користувача, так і в профілі "Загальнодоступного" користувача, хоча це, звичайно, залежить від дозволу на це.


Завдання створюється так:

  • Назва: Видалити ярлики робочого столу
  • Бігайте з найвищими привілеями

Планувальник завдань - Загальні

  • Тригери:
    • На подію:
      • Журнал: Application
      • Джерело: MsiInstaller
      • Ідентифікатор події: 1042
    • Щодня: 5 ранку щодня

Планувальник завдань - Умови

  • Дія: запуск програми
    • Програма / сценарій: cmd
    • Аргументи: /c for %f in (%userprofile%\Desktop\*.lnk %userprofile%\..\Public\Desktop\*.lnk) do del "%f"

Планувальник завдань - Дії

  • Умови: немає

Планувальник завдань - Умови


Ось завдання, яке ви можете зберегти у форматі .xml та потім імпортувати до планувальника завдань Windows:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2012-11-02T00:46:01.691625</Date>
    <Author>Gregmac</Author>
  </RegistrationInfo>
  <Triggers>
    <EventTrigger>
      <Enabled>true</Enabled>
      <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="Application"&gt;&lt;Select Path="Application"&gt;*[System[Provider[@Name='MsiInstaller'] and EventID=1042]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
    </EventTrigger>
    <CalendarTrigger>
      <StartBoundary>2012-11-02T05:00:00</StartBoundary>
      <Enabled>true</Enabled>
      <ScheduleByDay>
        <DaysInterval>1</DaysInterval>
      </ScheduleByDay>
    </CalendarTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>Greg</UserId>
      <LogonType>InteractiveToken</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>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>P3D</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>cmd</Command>
      <Arguments>/c for %f in (%userprofile%\Desktop\*.lnk %userprofile%\..\Public\Desktop\*.lnk) do del "%f"</Arguments>
    </Exec>
  </Actions>
</Task>

0

Я не знаю, чи є спосіб зробити це в Windows, але я знаю, що цей BASIC код буде працювати:

Kill("C:\Users\<name>\Desktop\*.lnk")

Це автоматично видаляє всі ярлики на робочому столі.

Інакше я не знаю жодного способу, крім видалення їх вручну
(що займає лише кілька секунд).
Якщо я дійсно не хотів цього робити, я б застосував "небезпечний спосіб", який пропонує @William


На жаль, є програми, які відтворюють піктограму робочого столу, якщо вона була видалена.
Dour High Arch

-1

Я усвідомлюю, що це питання майже 7 років, але, оскільки він з’явився в пошуку в Інтернеті, я думав, що додам його.

Якщо ОС є Windows Server, ви можете використовувати диспетчер ресурсів файлового сервера для створення конкретних екранів файлів для певних місць.


-1

Змініть дозволи в папці Робочий стіл, щоб запобігти написанню на робочий стіл будь-кому, включаючи себе (і запущеним вами програмам, як інсталяторам) Питання спочатку згадувало "абсолютно безкоштовно" ярликів, тому кошик і Мій комп'ютер також слід приховувати.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.