DECLARE INTEGER ShellExecute IN SHELL32.DLL ; INTEGER nWinHandle,; STRING cOperation,; STRING cFileName,; STRING cParameters,; STRING cDirectory,; INTEGER nShowWindow lcOperation = "Open" lcFilename = "cacls.exe" * * /T Means Change permissions on the current dir, * files under that dir and also all subdirs and files under that subdirs. * /E means EDIT permissions instead of replacing * /P means replace if the user already exist and the syntax is * /P UserAccount:N for None * /P UserAccount:R for Read * /P UserAccount:W for Write * /P UserAccount:C for Change the modify oprion in windows explorer * /P UserAccount:F for Full control * more parameters and switches can be found if you run cacls.exe in any command window. * lcParams = "c:\directory /T /E /P Everyone:F" ShellExecute(0,lcOperation,lcFilename,lcParams,"",0)Cacls.exe is present on any Windows version from nt4 or above, not in Win95/98 or millennium.
oShell = createobject("WScript.Shell") >lcRun = "CACLS file.txt /P JIM:F < yes.txt" >lnRC = oShell.Run(lcRun, 1, .T.)>