The specified resource name cannot be found in the image file.
<projectname>.rc files. There's some mismatch somewhere...
Okay, I was able to step through thanks to Alexander's suggestion.
I finally get in to AtlModuleUpdateRegistryFromResourceD() which calls
ResourceRegister(pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType)
pszModule = \Windows\MyAPI.dll
lpszRes = " "
szType = "REGISTRY"
I wasn't able to step in to ResourceRegister(), but it returned
0x80070716. Microsoft's MSDN documentation on ResourceRegister() is
nonexistent.
lpszRes is the only element that looked like it might be bad, It is
formed in UpdateRegistryFromResourceD() by doing
(LPCOLESTR)MAKEINTRESOURCE(nResID)
nResID = IDR_MYINTERFACE
I notice they use "lpszRes". I'm compiling with UNICODE support. Could
this be a conflict?
Does this give you any ideas?
Thanks,
-PaulH
Igor Tandetnik wrote:
PaulH <paul.heil@gmail.com> wrote:
Igor Tandetnik wrote:
PaulH <paul.heil@gmail.com> wrote:
Yes, there are two .rgs files.
MyAPI.rgs
MyInterface.rgs
Do I need to add them to the compile settings somewhere, or is it
enough to have them in the list of resource files?
They should appear in Resource View (View | Resource View). Only then
will they be built into your DLL's resources.
They both appear in my resource view.
Check that they appear under resource type "REGISTRY", and that the
resource ID of MyInterface.rgs matches one specified in
DECLARE_REGISTRY_RESOURCEID macro in your class.
If this still does not solve the problem, step into RegisterServer and
find out where exactly it fails, what resource ID and type it tries to
look for.
--
With best wishes,
Igor Tandetnik
With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going to
land, and it could be dangerous sitting under them as they fly
overhead. -- RFC 1925