08-16-2017 06:14 AM
Hey Guys
I have always used 32 bit versions of DIadem but recently I have decided to migrate all of my development in 64 bit versions.
I am working with the following 64 bit version; 2015 SP1 and 2017 SP1 Beta
According to the knowledge base the extensions should be located here
C:\Program Files (x86)\National Instruments\DIAdem 2015\Addinfo\GfSODBC.dll
Or
C:\Program Files (x86)\National Instruments\DIAdem 2017\Addinfo\GfSODBC.dll
When I navigate either of these locations the GPI extensions I want do not exist.
My 2015 SP1 32 bit version of DIAdem refers to the following location for GPI extensions
C:\Program Files (x86)\National Instruments\DIAdem 2015\Addinfo and there is also
C:\Program Files (x86)\National Instruments\DIAdem 2017\Addinfo
The GPI extensions I require exist in both locations here however when I load them into 64 bit versions of DIAdem I get and error stating "No 64 bit .DLL"
Any ideas where I can get the ODBC.dll for 64 bit versions of DIAdem?
Regards
Solved! Go to Solution.
08-16-2017 06:54 AM
😞 I assume it is not available for 64bit. Here is what the Release notes say.
08-16-2017 07:00 AM
Oh brother you guys are killing me 😞
I have to rewrite all my scripts using ActiveX objects to communicate with our DB?
lovely.
08-16-2017 07:53 AM
Additional Odd behavior
I have just installed DIAdem 2017 32 BIT SP1 and did not load the GFSODBC.dll and my database query script works however it does not work on the 2017 64bit SP1 application.
It appears I am already utilizing ActiveX object to access our data base. see below.
Function GetFilePathway(engNumber) Dim oConn, sAdoConnectString, oRS, strQuery 'Set AdoConString constant to Merlin Server address AdoConString = "Driver={MySQL ODBC 5.1 Driver};Server=HIDDEN;Database=HIDDEN;User=HIDDEN;Password=HIDDEN" Set oConn = CreateObject("ADODB.Connection") 'Create Database Connection Set oRS = CreateObject("ADODB.Recordset") 'Create Database Recordset sAdoConnectString = AdoConString oConn.Open sAdoConnectString 'Open Database Connection On Error Resume Next strQuery = GetELR2TestInfoQueryStr(engNumber) 'Set Database query to string Set oRS.ActiveConnection = oConn 'Point Database record set object to open database connection oRS.Open strQuery 'Perform database recordset query oRS.MoveFirst 'move the resultant record row to first position GetFilePathway = "S:\FBELR_Data\" &Cstr(oRS.Fields(2).Value) &"\" &engNumber '&"\D160083c_Valid Test_Use_This_One\" If (Err.number <> 0) Then Msgbox("could not locate " &engNumber) End If oRS.Close oConn.Close Set oConn = Nothing On error goto 0 End Function
08-16-2017 12:32 PM
You need an driver for 64 bit driver.
Following script may help you to determine which drivers are installed.
It also has a button to test the connection.
Option Explicit if ADOConStrGet then LogFileWrite ADOConString end if
P.S.: The dialog shown belongs to the MS ADO system.
08-17-2017 06:28 AM
Once I installed the 64bit driver I was able to get my script to work.
It may be worth noting that if a client has applications that require the use of a 32 bit driver installing a 64bit driver may cause some problems.
To retain this functionality my application required a 32bit driver so I needed to reinstall a 32 bit driver of equal revision level.