Hello,
I'm having trouble figuring out why a certain DLL won't register via SF9. Full disclosure, I'm using version 9.0.3.0. If this is determined to be a bug that has been fixed, I will consider upgrading.
The DLL in question is msxml4.dll - Microsoft's XML Core Services 4.0. It is set to auto-register. There is an accompanying file msxml4r.dll (non-registerable), but no other dependencies, certainly none that I am installing. The setup and DLLs are 32-bit, the host and target OS is Win10 64-bit. The setup copies both files fine - directed to %SystemFolder%, they both end up in SysWOW64 as expected. However, it errors when registering msxml4.dll (see screenshot 1). I can confirm that at the time of the error, both files are in SysWOW64.
Note that the path in the error is system32.
- If I use regsvr32.exe from system32 pointing to the DLL in system32, it fails.
- If I point it to the DLL in SysWOW64, it works.
- If I use regsvr32.exe from SysWOW64, it works, pointing to the DLL in either system32 or SysWOW64 (see screenshot 2).
Strangely enough, all the other DLLs & OCXs in the project register fine. I don't know what is unique about this file, or how SF9 calls out to register a file, but it not appear to work correctly in this case. Registering manually immediately after the failure using one of the above methods works fine. Running the setup as Admin doesn't seem to have any effect.
I appreciate any input!
Thanks,
Dan
I'm having trouble figuring out why a certain DLL won't register via SF9. Full disclosure, I'm using version 9.0.3.0. If this is determined to be a bug that has been fixed, I will consider upgrading.
The DLL in question is msxml4.dll - Microsoft's XML Core Services 4.0. It is set to auto-register. There is an accompanying file msxml4r.dll (non-registerable), but no other dependencies, certainly none that I am installing. The setup and DLLs are 32-bit, the host and target OS is Win10 64-bit. The setup copies both files fine - directed to %SystemFolder%, they both end up in SysWOW64 as expected. However, it errors when registering msxml4.dll (see screenshot 1). I can confirm that at the time of the error, both files are in SysWOW64.
Note that the path in the error is system32.
- If I use regsvr32.exe from system32 pointing to the DLL in system32, it fails.
- If I point it to the DLL in SysWOW64, it works.
- If I use regsvr32.exe from SysWOW64, it works, pointing to the DLL in either system32 or SysWOW64 (see screenshot 2).
Strangely enough, all the other DLLs & OCXs in the project register fine. I don't know what is unique about this file, or how SF9 calls out to register a file, but it not appear to work correctly in this case. Registering manually immediately after the failure using one of the above methods works fine. Running the setup as Admin doesn't seem to have any effect.
I appreciate any input!
Thanks,
Dan
Comment