Инструменты пользователя

Инструменты сайта


far_on_desktop

Это старая версия документа!


Создание ярлыка на рабочем столе(C:\Users\User\Desktop\Far Manager Admin.lnk) с запуском от Администратора

# 1. Находим активного (интерактивного) пользователя (например, VK00006547\User)
$interactiveUser = (Get-CimInstance -ClassName Win32_ComputerSystem).UserName
if (-not $interactiveUser) {
    Write-Host "Никто не залогинен на ПК" -ForegroundColor Red
    exit
}

# 2. Извлекаем только логин (всё, что после слэша "\")
$shortName = $interactiveUser.Split('\')[-1]

# 3. Формируем прямой путь к Рабочему столу, как вы и предложили
$DesktopPath = "C:\Users\$shortName\Desktop"

# Небольшая проверка на случай, если папка перенесена в OneDrive или названа по-русски
if (-not (Test-Path $DesktopPath)) {
    if (Test-Path "C:\Users\$shortName\OneDrive\Рабочий стол") {
        $DesktopPath = "C:\Users\$shortName\OneDrive\Рабочий стол"
    } elseif (Test-Path "C:\Users\$shortName\OneDrive\Desktop") {
        $DesktopPath = "C:\Users\$shortName\OneDrive\Desktop"
    }
}

# 4. Указываем пути для ярлыка
$FarPath = "C:\Program Files\Far Manager\far.exe"
$FarDir = "C:\Program Files\Far Manager"
$ShortcutPath = "$DesktopPath\Far Manager Admin.lnk"

# 5. Создаём базовый ярлык на Рабочем столе залогиненного юзера
$WshShell = New-Object -ComObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut($ShortcutPath)
$Shortcut.TargetPath = $FarPath
$Shortcut.WorkingDirectory = $FarDir
$Shortcut.Save()

# 6. Включаем галочку "Запускать от имени администратора" (21-й байт)
$bytes = [System.IO.File]::ReadAllBytes($ShortcutPath)
$bytes[21] = $bytes[21] -bor 0x20
[System.IO.File]::WriteAllBytes($ShortcutPath, $bytes)

Write-Host "✅ Ярлык успешно создан!" -ForegroundColor Green
Write-Host "Пользователь: $interactiveUser" -ForegroundColor Cyan
Write-Host "Путь: $ShortcutPath" -ForegroundColor Cyan
far_on_desktop.1772612332.txt.gz · Последнее изменение: bonterkoz

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution 4.0 International
CC Attribution 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki