The PHP Info page is built into PHP and gives you vital information about your server.
You can reset file permissions via PHP. the code below is an example on resetting file permission recursively. You must have shell_exec enabled.
<?php echo shell_exec( 'find . -type f -print0 | xargs -0 chmod 644' ); echo shell_exec( 'find . -type d -print0 | xargs -0 chmod 755' ); ?>
You are unable to login to windows. It appears to work and then logs straight back out. This is usually because of a virus or malware that has been removed but the registry entery has not.
This has been tested and works well on Windows 10.
Modify and run the code below from a command prompt with administrator rights.
ICACLS "I:\Users\peter" /grant Everyone:F /C /T
This works for Windows Vista but it works also for windows 7. It might also work for later versions.
Some of the permissions have been changed and I would like to find a way to reset all the permissions to the default settings. Can anyone provide a quick way to reset all permissions to default?
Instructions
Just run in a evalated prompt the following command.
secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
Links
This was last used by me on Windows XP. Some of this might work on later versions of Windows but has not been tested.
Occassionally the permissions on the windows registry or files become corrupt or altered. The methods below can restore access to all files and registry keys.
Programs will not install if the permissions are not correct in the registry.
SubInACL is a command-line tool that enables administrators to obtain security information about files, registry keys, and services, and transfer this information from user to user, from local or global group to group, and from domain to domain.
Instructions
Here are some steps that can be used to download and run the SubInACL tool to repair file and registry permissions that are often needed to successfully install programs on Windows, particularly for MSI-based (Windows Installer) setups:
cd /d "%programfiles%\Windows Resource Kits\Tools" subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f /grant=restricted=r /grant=YOURUSERNAME=f /setowner=administrators > %temp%\subinacl_output.txt subinacl /keyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f /grant=restricted=r /grant=YOURUSERNAME=f /setowner=administrators >> %temp%\subinacl_output.txt subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f /grant=users=r /grant=everyone=r /grant=restricted=r /setowner=administrators >> %temp%\subinacl_output.txt subinacl /keyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f /grant=users=r /grant=everyone=r /grant=restricted=r /setowner=administrators >> %temp%\subinacl_output.txt subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f /grant=users=r /setowner=administrators >> %temp%\subinacl_output.txt subinacl /keyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f /grant=users=r /setowner=administrators >> %temp%\subinacl_output.txt subinacl /subdirectories %programfiles%\ /grant=administrators=f /grant=system=f /grant=users=e >> %temp%\subinacl_output.txt subinacl /subdirectories %windir%\ /grant=administrators=f /grant=system=f /grant=users=e >> %temp%\subinacl_output.txt
Note: There are a couple of scenarios where installing or running SubInAcl can fail. For example, some non-English versions of Windows have the name of the Administrators group translated to another language, and the command lines listed above will fail in that case. I have posted workarounds for the issues that I know of in this separate blog post.
Also note: Running the above command lines will cause SubInAcl to create a log file named %temp%\subinacl_output.txt. If you see any errors reported in the cmd prompt after running SubInAcl, you can look in this log file for more detailed information about what file(s), folder(s) or registry value(s) are causing the errors. To open this log file, you can click on the Start menu, choose Run, type notepad %temp%\subinacl_output.txt and click OK.
When looking at this log file, you may see some errors reported with error code 5. That error code means Access Denied, and it is typically caused by Windows or some other program running on your system that is holding files, folders or registry values in use so that SubInAcl is unable to update the permissions for them. Most of the time, that type of error in the SubInAcl output can be safely ignored, but you may need to try to reboot and then manually fix the permissions for these files, folders or registry keys as a workaround.
Alternate verions of the script
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=system=f
Using SECEDIT.EXE (for Windows XP Professional)
In Windows XP Professional, you may use the following secedit command-line to reset the file and registry permissions to defaults.
secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose
For more information, see article How to reset security settings back to the defaults.
This is an alternative permissions reset method using SetACL.exe
SetACL.exe -on "C:\windows" -ot file -actn setprot -op "dacl:np;sacl:nc" -rec cont_obj -actn setowner -ownr "n:S-1-5-32-544;s:y" E:\SetACL.exe -on "C:\windows" -ot file -actn setprot -op "dacl:np;sacl:nc" -rec cont_obj -actn setowner -ownr "n:S-1-5-32-544;s:y"
Symptoms
When you open Disk Management MMC console (diskmgmt.msc), one of the following error messages may occur:
Resolution
This happens if one of the following services are missing in the system.
To restore the missing services, use diskmgmt.reg code available at the bottom of this page and create a reg file with it. Then, right-click the file and choose Merge. Click Yes to confirm. Restart Windows and see if you're able to launch Disk Managemt MMC successfully.
diskmgmt.reg
{code class="brush: powershell"}Windows Registry Editor Version 5.00 ;REG fix to reinstate Logical Disk Manager service ;Created on February 03, 2007 by Ramesh Srinivasan ;http://www.winhelponline.com [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dmadmin] "DependOnService"=hex(7):52,00,70,00,63,00,53,00,73,00,00,00,50,00,6c,00,75,00,\ 67,00,50,00,6c,00,61,00,79,00,00,00,44,00,6d,00,53,00,65,00,72,00,76,00,65,\ 00,72,00,00,00,00,00 "Type"=dword:00000020 "Start"=dword:00000003 "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ 74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,\ 00,6d,00,61,00,64,00,6d,00,69,00,6e,00,2e,00,65,00,78,00,65,00,20,00,2f,00,\ 63,00,6f,00,6d,00,00,00 "DisplayName"="Logical Disk Manager Administrative Service" "ObjectName"="LocalSystem" "Description"="Configures hard disk drives and volumes. The service only runs for configuration processes and then stops." [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dmadmin\Enum] "0"="Root\\LEGACY_DMADMIN\\0000" "Count"=dword:00000001 "NextInstance"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dmadmin\Parameters] "EnableDynamicConversionFor1394"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dmserver] "DependOnService"=hex(7):52,00,70,00,63,00,53,00,73,00,00,00,50,00,6c,00,75,00,\ 67,00,50,00,6c,00,61,00,79,00,00,00,00,00 "Type"=dword:00000020 "Start"=dword:00000003 "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ 74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\ 00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,\ 6b,00,20,00,6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00 "DisplayName"="Logical Disk Manager" "ObjectName"="LocalSystem" "Description"="Detects and monitors new hard disk drives and sends disk volume information to Logical Disk Manager Administrative Service for configuration. If this service is stopped, dynamic disk status and configuration information may become out of date. If this service is disabled, any services that explicitly depend on it will fail to start." [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dmserver\Parameters] "ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\ 00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\ 64,00,6d,00,73,00,65,00,72,00,76,00,65,00,72,00,2e,00,64,00,6c,00,6c,00,00,\ 00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dmserver\Enum] "0"="Root\\LEGACY_DMSERVER\\0000" "Count"=dword:00000001 "NextInstance"=dword:00000001 {/code}
The problem seems to be that the ole32.dll COM object registry can be corrupted by a bad interaction between the Windows XP Restore tool and Windows Update. Maybe, it is: update (which changes ole32.dll), ..., restore, ..., re-update.
DCOM. I'm sure it sounded like a good idea at the time, but in the real world it generates a lot of headaches. Here's some common DCOM, COM+ and WMI errors along with some fixes. There's also some scripts and registry keys at the end of article to help automate the fixes.
CoCreateInstance Errors
Error: CoCreateInstance for APPLICATION.NAME returned 80070005
Cause: This is an access denied error. Usually this is a result of not being to launch the application on the remote server.
Resolution: You'll need to open Component Services on the remote server/workstation and modify the Access, Launch, and Configuration permissions for the particular application. If you're getting this locally, do the same.
Windows Errors
Error: You do not have access rights to Logical Disk Manager on computer
Cause: This error is the result of incorrect DCOM permissions and/or Windows Firewall settings.
Resolution: Option A If you're connecting to a remote computer, make sure you have port 135 set as an exception on both firewalls. You may also need to add dmremote.exe to the exceptions list.
If that doesn't resolve it, you'll need to add some additional permissions.
Option B If its you're local PC, you'll need to correct the DCOM permissions.
Error: Unable to open Component Services (dcomcnfg). The MMC closes instantly as you expand Computers. This also resolves the Win32: Access Denied WMI error (see Option B above).
Cause: This is a combination of bad DCOM permissions and a messed up COM+ system. Usually this is accompanied by several COM+ errors in the event log.
Resolution: Reinstall COM+ and reset the DCOM permissions. Its a simple process.
Useful Registry Keys
Reset DCOM Permissions - [HKEY_LOCAL_MACHINESOFTWAREMicrosoftOle]
"EnableDCOM"="Y" "LegacyAuthenticationLevel"=dword:00000002
"LegacyImpersonationLevel"=dword:00000002
Reference Articles
If you get the error The COM+ event classes could not be registered then do the following:
There is a wiki article with mor info if required.
If mod_rewrite module is not enabled on xammp do the following.
Also to note this procedure should be the same for many other modules.
The following instructions tell you how to installed Ioncube on xammp
If successful you should now see a section in your PHP Info page that says: (just do a page search for ioncube)
Additional Modules
Module Name ionCube Loader
These slightly revised instructions allow you to run ioncude successfully on xampp 1.7.3 and on Windows 7 64-bit
I found the solution...
This should be added to the php.ini regardless of the thread safety status:
zend_extension = "C:\xampp\ioncube\ioncube_loader_win_5.3.dll"
This is wrong but it is in the documentation:
zend_extension_ts = "C:\xampp\ioncube\ioncube_loader_win_5.3.dll"
It seems like zend_extension_ts does not work anymore.