• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 431
  • Last Modified:

Cannot find Keycodev2.dll when running ASP.NET project

I recently lost the hard disk on my development laptop and while I had copies of my source code and databases, I had to reinstall VS.NET 2003 and other applications. I created a virtual directory and copied my ASP.NET application and it works as it used to, however, when I now try to open one of the embedded Crystal Reports I get the "Cannot find KeycodeV2.dll" error.

I've looked at many possible solutions however none of them work. I also no longer see the 19-digit keycode when I select Help > About in VS.NET. This is a production application that I can't release new features for unless the Crystal Reports issue is resolved.

Any proven solutions to this "annoying" problem will be greatly appreciated.
0
pstanford
Asked:
pstanford
1 Solution
 
torimarCommented:
Have you already tried the following?

QUOTE:

This error message appears because the ASPNET account does not have rights to the following registry keys:
" HKEY_CLASSES_ROOT\Interface\{4A4D268A-DF9B-4FC1-8301-D9FEEEF69F9C}
" HKEY_CLASSES_ROOT\TypeLib\{8D43D0B9-C14E-4577-9E67-A9A1EEF82302}
To resolve this error message, give the ASPNET account Read rights to these two registry keys.

If you have configured the ASP.NET worker process (aspnet_wp.exe) to run under the System account, then the System account must have the rights to these keys.

To give the ASPNET account read rights to a registry key perform the following steps:
1. Open the 32-bit Registry Editor by going to Start, click Run, then type "regedt32. For Windows XP computers, type "regedit" instead of "regedt32". Click OK.
2. Go to the HKEY_CLASSES_ROOT section and expand the Interface key.
3. Select the {4A4D268A-DF9B-4FC1-8301-D9FEEEF69F9C} key.
4. Click the Security menu and then click Permissions&. (When using regedit in Windows XP, click the Edit menu then click Permissions&.)
5. In the Permissions dialog box, add the ASPNET account from the local computer and give this account Read rights.
6. In the HKEY_CLASSES_ROOT section, select the TypeLib key. Repeat steps 3 to 5 above, using the {8D43D0B9-C14E-4577-9E67-A9A1EEF82302} key.

In order to have access to these registry keys, Keycodev2.dll must be registered. To register Keycodev2.dll, go to Start, click Run , then type:
Regsvr32 "C:\Program Files\Common Files\Crystal Decisions\1.0\bin\Keycodev2.dll"
The path to Keycodev2.dll is the same for Visual Studio .NET 2002 and Visual Studio .NET 2003.

If the file fails to register, download the Dependency Walker utility from http://www.dependencywalker.com/. This utility will list all the Keycodev2.dll dependency files and should indicate what files are missing or outdated.

END QUOTE

Quote was taken from the PDF file I attached.

Good luck.
crnet-keycodev2.pdf
0
 
pstanfordDirectorAuthor Commented:
First let me say 'Thank you' for saving me hours or trawling through sites where lots of respondents 'guess' at what they think the question or answer is.

I'm not sure which piece (or combination of pieces) solved this problem but I don't recall having to do any of this when I set the application up on my original development environment. I wasn't getting very far with the dependency walker which suggested I need DWMAPI.DLL which, according to other sites is not required for XP. Modifying registry settings is not my preferred way to solve problems but I believe the ASPNET permissions were probably the biggest contributor to the solution.

Having said all that, I truly appreciate the prompt and detailed nature of your response and now have the application working as it was before.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now