Sometimes you will see the error "Resource not found" in a .NET application, but without specifying which resource is missing. In this article it is explained how to find out more about which resource is causing this.
I got this error after installing a SharePoint hot fix and having it break the environment. I was able to recover SharePoint and the sites to an almost working state, but then this error appeared:

In the error message it only says a resource is missing, but it doesn't say which one. Surely I had configured web.config to show all error messages (make sure not to leave it like this in a production environment or else detailed errors will be shown to visitors):
- Update the customErrors element by setting mode to Off.
- <customErrors mode="Off" />
- Update the SafeMode element under SharePoint and set CallStack to true and AllowPageLevelTrace to true.
- <SafeMode MaxControls="200" CallStack="true" DirectFileDependencies="10" TotalFileDependencies="50" AllowPageLevelTrace="true">
- Upddate the trace element and set enabled to true.
- Update the compilation element and set debug to true.
- <compilation batch="false" debug="true">
Even after using these settings it still doesn't show directly in the error message which resource is missing.
To be able to see what is causing this error you need to view the HTML source of the page. An HTML comment is embedded in it which should have enough information to help find the missing resource.
In my case:

Many times it says the exact file missing, but not this time, although by the tracing of the error I was able to guess where to look in.
In my case I solved the problem by
copying the 12 hive from an environment which was working of the same project.