asoares
Posts: 8
|
| Posted: 10/11/2007, 6:40 AM |
|
Just for helping who has:
- crashes when starting codecharge (>=3.0 version)
- messagens related to xml conversion fails (>=3.0 version)
- when reinstalling 2.3 version , message impossible to register msxml3.dll or any arelated...
I spent one week reinstalling 2.3 and 3.2 many times. I uninstalled many microsoft updates, Internet explorer 7, many .net packages. Nothing could restart Codecharge programs operating well. Magically, they stoped working from night to day. Even reinstalling many time, correting all register fails, they never worked again.
Then I discover an article saying that some virus maybe some Microsoft update or MSN Messenger could change the administrator rights in the registrys. Even being the machine administrator, YOU CAN NOT register some DLLs, or you CAN NOT install some programs - like Codecharge.
Applying this routine, all my authorizations went back. And them I could reinstall both versions of Codecharge (2.3 and 3.2) withou ANY PROBLEM. They are now working perfectly.
The procedure is the following. Thanks to Aaron Steber (http://blogs.msdn.com/astebner/archive/2006/09/04/739820.aspx), the creator of the solution :
Solving setup errors by using the SubInACL tool to repair file and registry permissions
A while back, I wrote a blog post about a .NET Framework 2.0 beta 2 installation problem that was caused by incorrect access control list (ACL) permissions on some registry hives. In that post, I described how to use a tool in the Windows Resource Kit named SubInACL to reset file and registry ACLs to help solve this problem.
Ever since I wrote that post, I have run into installation errors for several other products that have been solved by using the SubInACL tool. Therefore, I wanted to write a standalone set of instructions for how and when to use the SubInACL tool because the previous blog post is specific to the .NET Framework 2.0 setup and does not always appear in search results when people run into this kind of a problem and search the Internet for assistance.
How to download and run SubInACL
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:
Download the SubInACL tool and install it. By default it will install to c:\Program Files\Windows Resource Kits\Tools
Go to the Start menu, choose Run, type cmd and click OK
Type notepad reset.cmd and click yes to create a new file named reset.cmd
Copy and paste the following contents into reset.cmd and then save and close it (or download it from this location on my file server and rename it from reset.cmd.txt to reset.cmd):
cd /d "%programfiles%\Windows Resource Kits\Tools"
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f /grant=system=f
subinacl /subdirectories %windir%\*.* /grant=administrators=f /grant=system=f
Type reset.cmd and press enter to run the SubInACL tool (you will need to have adminstrator privileges for this to run correctly). This tool will take several minutes to run
After reset.cmd completes, try to install the product that previously failed to install correctly on your system
When is SubInACL useful
I have found that the SubInACL tool is most useful when a setup package fails with error code 5 or 0x5 or 0x80070005. All of these error codes mean Access Denied, and this type of error code is often caused by missing ACLs for the Administrators group or the built-in System account. The Windows Installer service runs with System account permissions in most cases. If the System account does not have sufficient permissions to access the file system or parts of the registry, an MSI-based setup package will fail with an Access Denied error.
SubInACL can also help resolve Internet Explorer script errors caused by incorrect access control permissions for specific user accounts on the system.
Example of a setup failure that was fixed by SubInACL
A customer contacted me with a problem installing Visual Studio 2005. I looked at the main Visual Studio log file located at %temp%\dd_vsinstall80.txt, and I found that Windows Installer 3.1 setup was failing. Then, I looked at the Windows Installer 3.1 setup log file located at %windir%\KB893803v2.log. It showed the following error:
30.844: DoRegistryUpdates:UpdSpInstallFromInfSection Failed for MSI.Reg.Install: 0x5
30.844: DoInstallation:DoRegistryUpdates failed
30.875: Access is denied.
I had the customer run the above steps to use the SubInACL tool to update the file and registry ACLs on their system, and then they were able to install Windows Installer 3.1 and Visual Studio 2005 with no further problems.
<update date="11/15/2006"> Updated subinacl command lines to include recursive ACL updating for folders and files under %windir% </update>
<update date="3/22/2007"> Updated the steps to make them easier to follow by moving the directory change into the batch file. </update>
<update date="9/25/2007"> Updated the notes to indicate that some Internet Explorer script errors can be resolved with this tool as well </update>
-------x----------
After this procedure (observe that grant=administrators MUST BE changed if you dave ANOTHER LANGUAGE MACHINE, using the NAME of the ADministrator GROUP in your MACHINE. IN portuguese, I had to change to grant=Administradores...) everythig comes back to normality.
If you were trying to reinstall msxml3.dll, you probably got a message:
DllRegisterServer in mxcml3.dll failed.
Return code was: 0x80070005
You must have Microsoft XML 3.0 SP7 installed to apply this hotfix. (see http://support.microsoft.com/kb/932628). Download from: http://www.microsoft.com/downloads/details.aspx?display...74-f752bdca9582
(english or your machine language, be carefull)
After installation, try in START/ RUN (or at cmd prompt) the follwing command);
Regsvr32 %windir%\system32\msxml3.dll
If it DOES NOT REGISTER, you have PERMISSIONS PROBLEMS. Apply the Aaron Steber's solution. When you install Microsoft XML 3.0 SP7, it coppies the files, but it is imcompetent to REGISTER SOME DLLs like msxml3.dll etc... - ant it DOES NOT ADVISE YOU. It finishes the job with ALL DONE. Lies.
Retry:
Regsvr32 %windir%\system32\msxml3.dll
MAGIC!
I expect the above information can help Codecharge user not to be crazy, like me, when everything stops running well.
Alcides Soares
_________________
Alcides Soares Filho
Clicks to Bricks
c2b@clickstobricks.info
Brasil |
 |
 |
|