Hello everyone,
I would like to know how to run an automation script in 64-bit mode.
I’m encountering an issue with a library that works correctly on my local PC (64-bit). However, after publishing the script to the Dataminer and running it as an automation script, the library is no longer recognized. This happens because the automation script runs in 32-bit mode, which results in the following error:
Skyline.DataMiner.Net.Exceptions.DataMinerException: No Assembly found for cookie 137 error CS0009: Metadata file 'C:Skyline DataMinerProtocolScriptsDllImportmysql.data8.0.32libnet48krbcc64.dll' could not be opened — PE image doesn't contain managed metadata. error CS0009: Metadata file 'C:Skyline DataMinerProtocolScriptsDllImportmysql.data8.0.32libnet48krb5_64.dll' could not be opened — PE image doesn't contain managed metadata. error CS0009: Metadata file 'C:Skyline DataMinerProtocolScriptsDllImportmysql.data8.0.32libnet48k5sprt64.dll' could not be opened — PE image doesn't contain managed metadata. error CS0009: Metadata file 'C:Skyline DataMinerProtocolScriptsDllImportmysql.data8.0.32libnet48gssapi64.dll' could not be opened — PE image doesn't contain managed metadata. error CS0009: Metadata file 'C:Skyline DataMinerProtocolScriptsDllImportmysql.data8.0.32libnet48comerr64.dll' could not be opened — PE image doesn't contain managed metadata. (72,11): warning CS0219: The variable 'click' is assigned but its value is never used at CManagedAutomation.RunWrapped(CManagedAutomation* , Int32 iCookie, IUnknown* pIAutomation, tagVARIANT* varParameters, tagVARIANT* pvarReturn, String scriptName) at CManagedAutomation.Run(CManagedAutomation* , Int32 iCookie, Char* bstrScriptName, IUnknown* pIAutomation, tagVARIANT* varParameters, tagVARIANT* varEntryPoint, tagVARIANT* pvarReturn, tagVARIANT* pvarEntryPointResult)
Thanks in advance.
Hi Ömer,
Currently you can’t run an automation script in 64-bit mode. Automation scripts are always executed in a 32-bit process. This means that referenced DLLs need to be built for AnyCPU or explicitly for x86.
If you have control over the library, you can try compiling it as AnyCPU. If you’re using a third-party library, you’ll need to check whether a 32-bit (x86) version of that library is available.
Kind regards,
Tom