• [AutoIt]ChanguePermissions

 #486746  por Scorpio
 08 Jun 2016, 14:07
Vi que un compañero tiene un problema de permisos con los archivos de un pen, asi que me hice esta pequeña función que los hace visibles y nos da permisos de escritura.
#cs ----------------------------------------------------------------------------

	AutoIt Version: 3.3.8.1
	Author: Scorpio

	Script Function:
      Setear todos los archivos de una carpeta con permisos de escritura y hacerlos visibles.

#ce ----------------------------------------------------------------------------
#RequireAdmin
#Include <File.au3>

ChanguePermissions(@ScriptDir)

Func ChanguePermissions($sPath)
	Local $sFiles = _FileListToArray($sPath & '\')

	If @error Then Exit

	For $i = 1 To UBound($sFiles) - 1
		FileSetAttrib($sFiles[$i], '+A-RSH', 1)
	Next
EndFunc   ;==>ChanguePermissions
//Regards.
 #486754  por Pink
 09 Jun 2016, 01:44
Hola muy buena Scorpio . En el código que colocas solo funciona para el Directorio de ejecución, también podrías agregarle un retorno para verificar errores.

_FileListToArray retorna el numero de elementos del arreglo en el primer elemento.

A la final podría ser algo así.
Func _ChanguePermissions($sPath)
	Local $aFiles = _FileListToArray($sPath & '\', "*", $FLTA_FILESFOLDERS, True)
	If @error Then Return SetError(@error, 0, False)
	For $i = 1 To $aFiles[0]
		FileSetAttrib($aFiles[$i], '+A-RSH', 1)
	Next
	Return True
EndFunc   ;==>_ChanguePermissions
Saludos
 #486763  por comand
 09 Jun 2016, 14:24