User Tools

Site Tools


userspace:windows_remove_temporary_profile

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

userspace:windows_remove_temporary_profile [2017/04/03 09:39]
bobzbobz
userspace:windows_remove_temporary_profile [2021/08/23 08:37]
Line 1: Line 1:
-====== Windows Remove Temporary Profiles ====== 
-//Scripts and guide by Soren Birk.// 
  
-This scripts checks for temporary profiles in the registry and deletes them, if any found. 
- 
-**Tested with:** 
-  * OPSI 4.0.7.3.5 
-  * Winst 4.11.6.11 
-  * Windows 7, 64-Bit 
- 
-**Tree:** 
-<code> 
-CLIENT_DATA 
-  ├ registry.png 
-  └ once.ins 
-</code> 
- 
-==== once.ins ==== 
-<code winst> 
-; Author Soren Birk 
- 
-[Actions] 
-requiredWinstVersion >= "4.11.2.6" 
- 
-DefVar $ProductId$ 
-DefVar $UserProfileName$ 
-DefVar $SID$ 
-DefStringList $SIDcmd$ 
-DefStringList $UserProfileNamesList$ 
- 
-set $UserProfileNamesList$ = getOutStreamFromSection ('DosInAnIcon_list_profiledir') 
- 
-; ---------------------------------------------------------------- 
-; - Please edit these values                                     - 
-; ---------------------------------------------------------------- 
-Set $ProductId$       = "remove-temp-profiles" 
-; ---------------------------------------------------------------- 
-comment "Show product logo" 
-ShowBitmap "%ScriptPath%\registrylogo.png" "Remove temporary profiles" 
-  
-Message "Removing temporary profiles ..." 
-  
-comment "Removing .bak-files" 
-ChangeDirectory "%SCRIPTPATH%" 
-for %prof% in $UserProfileNamesList$ do sub_remove_bak 
- 
- 
-[DosInAnIcon_list_profiledir] 
-@echo off 
-dir "%ProfileDir%" /b /ad 
- 
-[sub_remove_bak] 
-Set $UserProfileName$ = "%prof%" 
-if not ($UserProfileName$ = "") and not ($UserProfileName$ = "All Users") and not ($UserProfileName$ = "Public") and not ($UserProfileName$ = "LocalService") and not ($UserProfileName$ = "NetworkService") 
- Set $SIDcmd$ = getOutStreamFromSection ('DosInAnIcon_getuser') 
- Set $SID$ = trim(takeFirstStringContaining($SIDcmd$,"S-")) 
-  
- comment "Removing .bak-file for " + $UserProfileName$ + " if it exists..." 
- Registry_install 
-endif 
- 
-[DosInAnIcon_getuser] 
-wmic useraccount where name='$UserProfileName$' get sid 
- 
-[Registry_install] 
-Deletekey [HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$SID$.bak] 
- 
-</code> 
userspace/windows_remove_temporary_profile.txt · Last modified: 2021/08/23 08:37 (external edit)