Seite 1 von 1

OPSI Script: Sub für jedes Userprofil laufen lassen

Verfasst: 08 Jun 2022, 09:25
von magicalUnicorn
Moin Zusammen,

aktuell probiere ich in einem Paket folgendes zu erreichen:

Für jedes existierende Userprofil soll gecheckt werden, ob Datei x existiert. Existiert sie, sollen bestimmte Werte per PatchTextFile gesetzt werden. Existiert Sie nicht, soll die Default-Datei in das Verzeichnis kopiert werden.

Den Check für die Existenz der Datei würde ich mit if (FileExists("Pfad zur Datei")) erledigen. Das kopieren/Patchen jeweils mit PatchTextFile bzw einer Files-Sektion. Allerdings muss dieser ganze Block, gebündelt, jeweils pro User passieren. Ich habe bisher aber keine Möglichkeit gefunden eine Sub für jedes Userprofil laufen zu lassen.

TLDR: Ich suche quasi ein Synonym zu "/AllUserProfiles", dass beim Aufruf einer Sub funktioniert.

Re: OPSI Script: Sub für jedes Userprofil laufen lassen

Verfasst: 14 Jun 2022, 16:23
von dotdle
Hallo magicalUnicorn,

Schau Dir mal dieses Powershell-Skript an:
https://gist.github.com/Gunslap/fada1bd ... efault-ps1

Friede sei mit Dir!

Re: OPSI Script: Sub für jedes Userprofil laufen lassen

Verfasst: 15 Jun 2022, 15:05
von SisterOfMercy
I think you're making it much too hard. Use copy -n to not overwrite an existing file.

Code: Alles auswählen

Files_install_AllProfiles /AllNtUserProfiles
PatchTextFile_file "%userprofiledir%\AppData\Roaming\Whatever\file_to_patch" /AllNTUserProfiles

[Files_install_AllProfiles]
copy -n "%ScriptPath%\files\file_to_copy" "%UserProfileDir%\AppData\Roaming\Whatever"

[PatchTextFile_file ]
GoToTop
FindLine_Containing '"enable_opengl"'
DeleteTheLine
GoToTop
FindLine_Containing '"features"'
AdvanceLine 1
InsertLine '"enable_opengl" : $opengl$,'

Re: OPSI Script: Sub für jedes Userprofil laufen lassen

Verfasst: 17 Jun 2022, 10:12
von magicalUnicorn
Hey SisterOfMercy,

i had hoped this would work as well, but sadly the "/AllNTUserProfiles" Flag doesn´t seem to work for the PatchTextFile Section (anymore). At least in my testing it always patched the file for the current user and not for all users on the system.

Re: OPSI Script: Sub für jedes Userprofil laufen lassen

Verfasst: 17 Jun 2022, 17:31
von SisterOfMercy
Seems to work fine over here:

Code: Alles auswählen

[6] [2022-06-17 17:30:10.196] [avidemux]   Patching: C:\Users\test\AppData\Roaming\avidemux\config3
[6] [2022-06-17 17:30:10.196] [avidemux]         FILE C:\Users\test\AppData\Roaming\avidemux\config3
[6] [2022-06-17 17:30:10.197] [avidemux]     Item Pointer set to Top (before first line)
[7] [2022-06-17 17:30:10.197] [avidemux]     Load from file with encoding: system
[6] [2022-06-17 17:30:10.198] [avidemux]     Item no. 5 is containing '"ENABLE_OPENGL"'
[6] [2022-06-17 17:30:10.198] [avidemux]     Item Pointer set to 5
[6] [2022-06-17 17:30:10.199] [avidemux]     Deleted item no. 5: 		"enable_opengl" : true
[6] [2022-06-17 17:30:10.199] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.199] [avidemux]     Item no. 4 is containing '"FEATURES"'
[6] [2022-06-17 17:30:10.199] [avidemux]     Item Pointer set to 4
[6] [2022-06-17 17:30:10.199] [avidemux]     Item Pointer set to 5
[8] [2022-06-17 17:30:10.200] [avidemux]     r:'"enable_opengl" : true,'
[6] [2022-06-17 17:30:10.200] [avidemux]     Inserted item '"enable_opengl" : true,' at position 5
[6] [2022-06-17 17:30:10.200] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.200] [avidemux]     Item no. 11 is containing '"LANGUAGE"'
[6] [2022-06-17 17:30:10.200] [avidemux]     Item Pointer set to 11
[6] [2022-06-17 17:30:10.200] [avidemux]     Deleted item no. 11: 		"language" : "en"
[6] [2022-06-17 17:30:10.201] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.201] [avidemux]     Item no. 10 is containing '"DEFAULT"'
[6] [2022-06-17 17:30:10.201] [avidemux]     Item Pointer set to 10
[6] [2022-06-17 17:30:10.201] [avidemux]     Item Pointer set to 11
[8] [2022-06-17 17:30:10.201] [avidemux]     r:'"language" : "en",'
[6] [2022-06-17 17:30:10.201] [avidemux]     Inserted item '"language" : "en",' at position 11
[6] [2022-06-17 17:30:10.202] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.202] [avidemux]     Item no. 8 is containing '"ENABLED"'
[6] [2022-06-17 17:30:10.202] [avidemux]     Item Pointer set to 8
[6] [2022-06-17 17:30:10.202] [avidemux]     Deleted item no. 8: 		"enabled" : false
[6] [2022-06-17 17:30:10.202] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.203] [avidemux]     Item no. 7 is containing '"UPDATE"'
[6] [2022-06-17 17:30:10.203] [avidemux]     Item Pointer set to 7
[6] [2022-06-17 17:30:10.203] [avidemux]     Item Pointer set to 8
[8] [2022-06-17 17:30:10.203] [avidemux]     r:'"enabled" : false,'
[6] [2022-06-17 17:30:10.203] [avidemux]     Inserted item '"enabled" : false,' at position 8
[7] [2022-06-17 17:30:10.203] [avidemux]     Save to file with encoding: system
[8] [2022-06-17 17:30:10.204] [avidemux]     Will save (system) encoding to file: C:\Users\test\AppData\Roaming\avidemux\config3 :
[6] [2022-06-17 17:30:10.204] [avidemux]   
[6] [2022-06-17 17:30:10.205] [avidemux]   Patching: C:\Users\Administrator\AppData\Roaming\avidemux\config3
[6] [2022-06-17 17:30:10.205] [avidemux]         FILE C:\Users\Administrator\AppData\Roaming\avidemux\config3
[6] [2022-06-17 17:30:10.205] [avidemux]     Item Pointer set to Top (before first line)
[7] [2022-06-17 17:30:10.205] [avidemux]     Load from file with encoding: system
[6] [2022-06-17 17:30:10.206] [avidemux]     Item no. 5 is containing '"ENABLE_OPENGL"'
[6] [2022-06-17 17:30:10.207] [avidemux]     Item Pointer set to 5
[6] [2022-06-17 17:30:10.207] [avidemux]     Deleted item no. 5: 		"enable_opengl" : true
[6] [2022-06-17 17:30:10.207] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.207] [avidemux]     Item no. 4 is containing '"FEATURES"'
[6] [2022-06-17 17:30:10.207] [avidemux]     Item Pointer set to 4
[6] [2022-06-17 17:30:10.208] [avidemux]     Item Pointer set to 5
[8] [2022-06-17 17:30:10.208] [avidemux]     r:'"enable_opengl" : true,'
[6] [2022-06-17 17:30:10.208] [avidemux]     Inserted item '"enable_opengl" : true,' at position 5
[6] [2022-06-17 17:30:10.208] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.208] [avidemux]     Item no. 11 is containing '"LANGUAGE"'
[6] [2022-06-17 17:30:10.209] [avidemux]     Item Pointer set to 11
[6] [2022-06-17 17:30:10.209] [avidemux]     Deleted item no. 11: 		"language" : "en"
[6] [2022-06-17 17:30:10.209] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.209] [avidemux]     Item no. 10 is containing '"DEFAULT"'
[6] [2022-06-17 17:30:10.209] [avidemux]     Item Pointer set to 10
[6] [2022-06-17 17:30:10.209] [avidemux]     Item Pointer set to 11
[8] [2022-06-17 17:30:10.210] [avidemux]     r:'"language" : "en",'
[6] [2022-06-17 17:30:10.210] [avidemux]     Inserted item '"language" : "en",' at position 11
[6] [2022-06-17 17:30:10.210] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.210] [avidemux]     Item no. 8 is containing '"ENABLED"'
[6] [2022-06-17 17:30:10.210] [avidemux]     Item Pointer set to 8
[6] [2022-06-17 17:30:10.211] [avidemux]     Deleted item no. 8: 		"enabled" : false
[6] [2022-06-17 17:30:10.211] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.211] [avidemux]     Item no. 7 is containing '"UPDATE"'
[6] [2022-06-17 17:30:10.211] [avidemux]     Item Pointer set to 7
[6] [2022-06-17 17:30:10.211] [avidemux]     Item Pointer set to 8
[8] [2022-06-17 17:30:10.212] [avidemux]     r:'"enabled" : false,'
[6] [2022-06-17 17:30:10.212] [avidemux]     Inserted item '"enabled" : false,' at position 8
[7] [2022-06-17 17:30:10.212] [avidemux]     Save to file with encoding: system
[8] [2022-06-17 17:30:10.213] [avidemux]     Will save (system) encoding to file: C:\Users\Administrator\AppData\Roaming\avidemux\config3 :
[6] [2022-06-17 17:30:10.213] [avidemux]   
[6] [2022-06-17 17:30:10.213] [avidemux]   Patching: C:\Users\Default\AppData\Roaming\avidemux\config3
[6] [2022-06-17 17:30:10.213] [avidemux]         FILE C:\Users\Default\AppData\Roaming\avidemux\config3
[6] [2022-06-17 17:30:10.214] [avidemux]     Item Pointer set to Top (before first line)
[7] [2022-06-17 17:30:10.214] [avidemux]     Load from file with encoding: system
[6] [2022-06-17 17:30:10.215] [avidemux]     Item no. 5 is containing '"ENABLE_OPENGL"'
[6] [2022-06-17 17:30:10.215] [avidemux]     Item Pointer set to 5
[6] [2022-06-17 17:30:10.215] [avidemux]     Deleted item no. 5: 		"enable_opengl" : true
[6] [2022-06-17 17:30:10.216] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.216] [avidemux]     Item no. 4 is containing '"FEATURES"'
[6] [2022-06-17 17:30:10.216] [avidemux]     Item Pointer set to 4
[6] [2022-06-17 17:30:10.216] [avidemux]     Item Pointer set to 5
[8] [2022-06-17 17:30:10.216] [avidemux]     r:'"enable_opengl" : true,'
[6] [2022-06-17 17:30:10.217] [avidemux]     Inserted item '"enable_opengl" : true,' at position 5
[6] [2022-06-17 17:30:10.217] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.217] [avidemux]     Item no. 11 is containing '"LANGUAGE"'
[6] [2022-06-17 17:30:10.217] [avidemux]     Item Pointer set to 11
[6] [2022-06-17 17:30:10.217] [avidemux]     Deleted item no. 11: 		"language" : "en"
[6] [2022-06-17 17:30:10.217] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.218] [avidemux]     Item no. 10 is containing '"DEFAULT"'
[6] [2022-06-17 17:30:10.218] [avidemux]     Item Pointer set to 10
[6] [2022-06-17 17:30:10.218] [avidemux]     Item Pointer set to 11
[8] [2022-06-17 17:30:10.218] [avidemux]     r:'"language" : "en",'
[6] [2022-06-17 17:30:10.218] [avidemux]     Inserted item '"language" : "en",' at position 11
[6] [2022-06-17 17:30:10.219] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.219] [avidemux]     Item no. 8 is containing '"ENABLED"'
[6] [2022-06-17 17:30:10.219] [avidemux]     Item Pointer set to 8
[6] [2022-06-17 17:30:10.219] [avidemux]     Deleted item no. 8: 		"enabled" : false
[6] [2022-06-17 17:30:10.219] [avidemux]     Item Pointer set to Top (before first line)
[6] [2022-06-17 17:30:10.220] [avidemux]     Item no. 7 is containing '"UPDATE"'
[6] [2022-06-17 17:30:10.220] [avidemux]     Item Pointer set to 7
[6] [2022-06-17 17:30:10.220] [avidemux]     Item Pointer set to 8
[8] [2022-06-17 17:30:10.220] [avidemux]     r:'"enabled" : false,'
[6] [2022-06-17 17:30:10.220] [avidemux]     Inserted item '"enabled" : false,' at position 8
[7] [2022-06-17 17:30:10.220] [avidemux]     Save to file with encoding: system
[8] [2022-06-17 17:30:10.221] [avidemux]     Will save (system) encoding to file: C:\Users\Default\AppData\Roaming\avidemux\config3 :

Re: OPSI Script: Sub für jedes Userprofil laufen lassen

Verfasst: 20 Jun 2022, 09:02
von magicalUnicorn
Hey SisterOfMercy,

my bad. I goofed up during testing and used the flag on the wrong section. Works like a charm. Thank you a lot for pointing me into the right direction!