Monthly Archives: Kwiecień 2018

Uprawnienia do usług systemu Windows

Czasem zachodzi potrzeba aby dodać zwykłemu użytkownikowi pełny dostęp do usługi (np. możliwość restartu). Świetnym narzędziem, które umożliwia modyfikację uprawnień usług jest narzędzie Microsoftu – SubInACL.
Oto przykładowa składnia polecenia, które nadaje użytkownikowi „gość” pełną kontrolę nad buforem wydruku oraz drukarką HP LJ 1020.

SUBINACL /verbose=1 /service spooler /GRANT=gość=f
SUBINACL /verbose=1 /printer "HP LJ 1020" /GRANT=gość=f

Oto inne opcje:
F : Pełna kontrola (Full Control)
R : Prawo odczytu (Read) (użytkownik widzi tą usługę, ale nie może jej modyfikować)
W : Prawo do modyfikowania (Write)
X : Prawo do uruchomienia (eXecute)
Q : Odczytanie szczegółowych informacji (Query Service Configuration)
S : Odczytanie statusu (Query Service Status)
E : Wylistowanie usług zależnych (Enumerate Dependent Services)
C : Zmiana w konfiguracji usługi (Service Change Configuration)
T : Uruchamianie usługi (Start)
O : Zatrzymywanie usługi (Stop)
P : Pauza/wznowienie

Źródło:
http://www.robvanderwoude.com/subinacl.php
https://michlstechblog.info/blog/windows-set-permissions-on-a-service/
https://social.technet.microsoft.com/Forums/windows/en-US/1038ba2f-5366-4d33-9a52-479dc1280729/how-do-i-edit-the-registry-to-permanently-disable-windows-updates?forum=win10itprosetup
https://blogs.msmvps.com/erikr/2007/09/26/set-permissions-on-a-specific-service-windows/
https://www.coretechnologies.com/blog/windows-services/essential-tools-windows-services-sc-exe/

Handbrake – automatyczna kompresja plików video

Poniższy skrypt PowerShell umożliwia automatyczną kompresję materiałów video w folderze i podfolderach.

gci . *.mp4 -R | 
foreach-object {
 $saveBase = "v:\handbrake"
 $curDir = (Get-Item -Path ".\" -Verbose).FullName
 $inName = $_.BaseName + $_.Extension
 $inFile = $_.DirectoryName + "\" + $inName
 $outFile = $saveBase + $inFile.replace($curDir, "")
 $outDir = $outFile.replace($inName, "")
 New-Item -path "$outDir" -type directory -force
 echo "Working on $inFile"
 echo "Saving to $outFile"
 &"C:\Program Files\HandBrake\HandBrakeCLI.exe" -i "$inFile" -o "$outFile" --preset "Very Fast 1080p30"
}

Źródła i inne tematycznie związane artykuły:
http://www.codegist.net/search/handbrake%20recursive%20encode/1
https://dzone.com/articles/poor-mans-batch-encoding-with-handbrake
https://www.hanselman.com/blog/BatchConvertingADirectoryTreeOfVideosRecursivelyWithHandbrakeForStreamingToAnXbox360.aspx
https://jorge.fbarr.net/2012/05/19/batch-convert-videos-using-handbrake-and-a-script/