-1

Корпоративный образ, используемый на моем ноутбуке, постоянно заставляет Проводник прикрепляться к моей панели задач. Я ходил с ними по кругу об этой проблеме (и других, которые у меня были), но я сдаюсь на этом фронте, так как другие проблемы устранены. В качестве обходного пути я хочу попытаться создать скрипт, который я смогу запустить при входе в систему и который откроет Проводник для меня из панели задач. Я был по всему Интернету с различными PowerShell, VBScript и пакетными файлами. Большинство сценариев отлично работают для любой вещи, прикрепленной к панели задач, за исключением Проводника файлов. Большинство закрепленных элементов находятся в% AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar, и я вижу там Проводник. Однако все сценарии, которые я вижу, используют глаголы объекта, ищут открепление из команды панели задач и запускают его. File Explorer не имеет этого. Я искал весь мой жесткий диск и не могу подать файл с помощью команды unpin для проводника. Если я удаляю файл и удаляю регистратор группы задач в HKCU, элемент больше не закрепляется, но все равно отображается на панели задач. Если я щелкну по нему, то произойдет сбой и само удаление. Если я обновлю файл explorer.exe, элемент снова прикрепляется к панели задач. Есть идеи, как это сделать?

1 ответ1

0

Он по-прежнему должен работать с методом, используемым PinTo10, который основан на этом довольно сумасшедшем методе, когда вы в основном переименовываете свой собственный исполняемый файл в explorer.exe, чтобы получить права доступа Windows к закреплению.

Также кажется, что вам нужно использовать специальную ссылку, а не обычную, но в моих тестах, если вы используете одну из "C:\ProgramData\Microsoft\Windows\Start Menu Places", она все еще работает.

Так что это будет:

PinTo10v2.exe /unpintb "C:\ProgramData\Microsoft\Windows\Start Menu Places\01 - File Explorer.lnk"

Если вы предпочитаете чисто скриптовый метод (должно быть достаточно для открепления, а не для закрепления), это будет что-то вроде

Set wso = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set sho = CreateObject("Shell.Application")

sourcedir = fso.GetFile(WScript.ScriptFullName).ParentFolder
Set folder = sho.Namespace("C:\ProgramData\Microsoft\Windows\Start Menu Places")

For Each item In folder.Items
    If contains(item.Name,"Explorer") Then
        item.InvokeVerb("taskbarunpin")
    End If
Next

' Funktion um zu prüfen ob ein string einen anderen enthält
Function contains(sourceStr, checkStr)  
    contains=InStr(1, sourceStr, checkStr, vbTextCompare) > 0
End Function

(Я не смог протестировать его с новейшими сборками Win 10, но до сих пор они никогда не касались этой части, поскольку сделали ее полностью прозрачной для Windows 10)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .