Informix

 View Only
  • 1.  Informix.Net.Core.dll 64bit

    Posted Wed June 26, 2024 10:32 AM

    Hey,

    I am using the Net.Informix.Core.dll to connect my C# Application to the Informix Database, all in all this worked pretty well.

    But when I published my application to Windows IIS I got the error that I am having a badFormat dll, 
    after researching all my dlls I noticed that the Informix.Net.Core.dll installed with the Informix Client SDK 4.50.FC10W1 is only 32bit

    But according to the Webpage:

    Informix .NET Core Provider

    Ibm remove preview
    Informix .NET Core Provider
    Starting with CSDK 4.50.xC4, Informix .NET Core Provider compatible with .NET Core SDK/Runtime v3.1 is shipped for Windows x64 and Linux x86_64 platforms.
    View this on Ibm >

    There should be a 64bit Version for Windows starting with 4.50.xC4.

    Does anyone know where I can get the 64bit dll?

    Thanks in advance

    Andre



    ------------------------------
    Andre Emmerichs
    ------------------------------



  • 2.  RE: Informix.Net.Core.dll 64bit

    Posted Thu June 27, 2024 04:22 AM

    Hi,

    The suffix letter in the version number of most of the Informix products if the product is 32-bit, 64-bit or a mix.
    'U' is the 32-bit version,

    'F' is the 64-bit,
    and  'H' (no longer used), if it support both allowed in some OS/arch like AIX or HP)

    The Windows CSDK 4.50.FC10W1 you installed is the 64-bit of CSDK. All libraries and executable are 64-bit.
    .NET and .NET Core included in FC10W1 are both 64, you can check it using the .NET SDK `corflags` (32BITREQ flag):
     

    ​d:\infx\csdk450fc10w1\bin>"c:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\corflags" "Informix.Net.Core.dll"
    Microsoft (R) .NET Framework CorFlags Conversion Tool.  Version  4.8.3928.0
    Copyright (c) Microsoft Corporation.  All rights reserved.

    Version   : v4.0.30319
    CLR Header: 2.5
    PE        : PE32
    CorFlags  : 0x9
    ILONLY    : 1
    32BITREQ  : 0
    32BITPREF : 0
    Signed    : 1

    d:\infx\csdk450fc10w1\bin>

    If you are getting an error from IIS, make sure the IIS pool is 64-bit. Somewhere in the advanced settings there is an option to enable or disable 32-bit apps. If they are enabled, the worker process will run in 32-bit mode which will be incompatible with your CSDK libraries.


    Javier


    ------------------------------
    Javier Sagrera
    ------------------------------



  • 3.  RE: Informix.Net.Core.dll 64bit

    Posted Fri June 28, 2024 02:06 AM

    Hi Javier,

    thanks for that information,

    I have been checking the DLLs with Git Bash and Linux command: "file", where I got:

    $ file informix.net.core.dll
    informix.net.core.dll: PE32 executable (DLL) (console) Intel 80386 Mono/.Net assembly, for MS Windows

    $ file IBM.Data.Informix.dll
    IBM.Data.Informix.dll: PE32+ executable (DLL) (console) x86-64 Mono/.Net assembly, for MS Windows

    Because of that I thought Informix.Net.Core would be 32bit, but with the corflags informationen provided from you, I see that it is compiled as any cpu,
    so this sould be fine, thank you



    ------------------------------
    Andre Emmerichs
    ------------------------------