As I just reported in a separate reply, my code works with a 32bit strawberry perl. The messages I get from depends.exe, called as suggested above, for MGCPCBAutomationLicensing look fairly innocent:
Loaded "MGCPCBAUTOMATIONLICENSING.DLL" at address 0x00550000 by thread
+ 7. Successfully hooked module.
DllMain(0x00550000, DLL_PROCESS_ATTACH, 0x00000000) in "MGCPCBAUTOMATI
+ONLICENSING.DLL" called by thread 7.
DllMain(0x00550000, DLL_PROCESS_ATTACH, 0x00000000) in "MGCPCBAUTOMATI
+ONLICENSING.DLL" returned 1 (0x1) by thread 7.
DllMain(0x00550000, DLL_PROCESS_DETACH, 0x00000000) in "MGCPCBAUTOMATI
+ONLICENSING.DLL" called by thread 7.
DllMain(0x00550000, DLL_PROCESS_DETACH, 0x00000000) in "MGCPCBAUTOMATI
+ONLICENSING.DLL" returned 1 (0x1) by thread 7.
Unloaded "MGCPCBAUTOMATIONLICENSING.DLL" at address 0x00550000 by thre
+ad 7.
When I try the same with my default 64bit perl however, I get
Failure starting the process. The request is not supported (50).
And I get this even when I just use perl.exe without any args (no program to load).