Microsoft Access Text ODBC Driver on Windows 7 - windows

I created a Delphi application which utilizes an ODBC data source to access text files in csv format. The driver is the "Microsoft Access Text Driver". But when I deploy my application on a Windows 7 computer it does not work because this driver is not available (there are only two available in odbcad32: sql native client and sql server)
How can I install this driver? I have tried to install MDAC, but it doesn't do anything. No errors or anythinig, but it just shows a quick scroll bar and that is it. And I have heard that MDAC has been replaced by WDAC on Windows 7.
EDIT: I should add this is Windows 7 Home, not Professional.

You have to run the ODBC Administrator from this location:
C:\Windows\SysWOW64\odbcad32.exe
then you will see all the x32 drivers

You might have to install the Microsoft Jet driver. I believe that Microsoft broke it out of MDAC awhile back, and it is no longer be installed by default.
EDIT After further research it appears that they have removed the text file drivers from the jet engine entirely. You can still use the Microsoft ODBC DB Provider for ODBC Drivers to access dBase and Excel files, but no longer text files.

Project JEDI has an open source TJvCSVDataSet

Why not lighten it up and use a VCL TStringList with TStringList.LoadFromFile() and forget about ODBC, MDAC, WDAC and whatever else weighs down the task at hand?

I found I could access the Microsoft text Driver if my application is compiled targeting x86 cpus.

I believe you'll need to install this package to get the text driver (among others).

Here's a CSV demo that doesn't require you to install any components or write any parsing code. If you can call my class .Create method, you can use this code without installing anything.
It uses two unit files that implement the JvCsvDataSet component, which is still a class, which can be instantiated the same way you can create a TStringList, you just create a TJvCsvDatSet.

Related

Oracle ODBC connection failure (using oracle's stock ODBC drivers)

Want to use an Oracle-ODBC connection in Visual Studio 2017/ SSIS as it's much faster than OLE DB during tests.
Problem:
I follow Oracle's steps to the letter.
Install instant client (v18, also tried v12).
Download/ extract ODBC download in same library. Run odbc_install.exe.
See the Driver in 'ODBC Data Sources/ Admin' in Windows 10.
Add new User Data Source. TNS Service names pull up fine. Test
Connection (User/ Pass) -- it works!! The Connection works!!
I tried this with 64 bit in Oracle, their instant client v18.3 or 12.2 both. All works in Window's "Oracle Source Administrator" via test connections.
I tried this with 32 bit downloads as well. All is good.
Now, open Visual Studio. First tried 64 bit (my Windows OS is 64 bit, but Visual Studio Data Tools is only 32 bit). Had a hunch it wouldn't work.
Error message "system architecture and client is not the same" or such. Gotcha.
Tried the 32 bit Oracle ODBC driver (User Source). I keep getting the same message (tried 18_3 and 12_2 versions).
Now .... SQLORA32.dll is in the very file path it named. It's right there! Why can't it be found? The test connection in ODBC Source Admin works! What is going on here?
And I'm unsure if I have to "register" something via the command line, I had to do that once before, maybe it was an unrelated issue.
To boot, when I tried a 3rd party "Devart Oracle ODBC connector" -- it's a simple 5-second install wizard that works flawlessly instantly. Problem is it's a 30-day trial and costs $150 at least. How can I can get an Oracle-created ODBC connector (Oracle being world-renowned for janky-azz products) to actually work?
Devart, and probably Attunity Oracle ODBC: 5 second installs
Oracle's own: Harder to install than breaking into Fort Knox/ learning Mandarin Chinese. Please advise.
I am answering my own question.
Unfortunately some of us ETL/ BI guys need to go so wide on problems that there's no time to figure out every little detail/ glitch of Oracle's ... whatever they're doing now.
But here's a fix. In Visual Studio 2017/ Data Tools/ the SSIS IDE .... if you want an Oracle ODBC connection (Faster than OLE Db for some reason) --- when you're setting it up, instead of selecting a NAMED "user or system data source" that you created in ODBC Source Administrator, simply using the "Builder" option (to the left of Use Connection String) for a connection string. It does the exact same steps as the ODBC Source Admin, but within Visual Studio. I don't know what the difference is here, but some wizardry/// who knows what is different, and the connection somehow, suddenly, for some reason, works.

VB6 application oracle 12 64bit connection

We have a number of applications written in VB6 (not .NET) that have been running for almost 20 years.
These applications are running on Windows 2007 64bit servers and connecting to Oracle-11 with a 32bit client.
The connection string contains "Provider=OraOLEDB.Oracle"
So far, so good.
The problem is that we need to convert, for reasons that go beyond the scope of this thread) to Oracle-12 64bit.
After having installed the Oracle 12-client (and disinstalled the Oracle-11 client), we get the following error when trying to open the connection:
"Provider cannot be found. It may not be properly installed."
I'm sure we did install the client and am therefore afraid that VB6 cannot connect to Oracle using the 64bit client.
Apparently easy solutions are unfortunately out of the question:
- Convert to .NET or whatsoever and compile under 64 bit
- Keep the 32bit oracle client.
Any idea how to risolve this?
OLE-DB
Good news and bad; because Visual Basic 6.0 is a 32 bit program with no 64 bit compiler, the 32 bit Oracle Data Access Components software must be installed, even if the database itself is running on a 64 bit server in a 64 bit Oracle Database install, specifically you need the 32 bit Oracle Provider for OLE DB rather than the whole client.
The driver can be found here (Download the ODAC XCopy version):
http://www.oracle.com/technetwork/database/windows/downloads/utilsoft-087491.html
The following thread describes your exact problem and instructions on fixing it:
https://hoopercharles.wordpress.com/2012/11/25/connecting-to-an-oracle-database-with-visual-basic-6-0-on-windows-8-64-bit/
ODBC drivers
Another way to connect is to use ODBC drivers instead, there are pros and cons to each method so google to find them.
First you'll need to install the SQORA32 ODBC driver which comes with the 64 bit client or with the ODAC linked above.
Next, you'll need to create an ODBC connection, instructions can be found here:
https://tensix.com/2012/06/setting-up-an-oracle-odbc-driver-and-data-source/
Finally you need to change your connections strings in VB6 to use the newly created ODBC connections. Something along the lines of the following should work nicely (obviously nameOfDatabase is the name given to your odbc connection):
Provider=MSDASQL;Dsn=nameOfDatabase;Uid=usernameHere;Pwd=passwordHere
Be careful when you set up your DSN, make sure you use the 32 bit ODBC connection manager which can be found in the following location:
c:\windows\sysWOW64\odbcad32.exe
The same program can be found in the system32 folder but that's the 64 bit version....not confusing at all!
(If you can't follow the solution of twoleggedhorse, which is way better.)
You can write a small DLL in .NET 32bit, and make it COM visible so it will be usable by your 32 bits application.
I said in my comment that it seems to be possible in .NET to talk with the DB without an installed client.
To make it through the least painful, you can write it ADO-like (ie a class to replace RecordSet, another for Connection, and so on). Then add it as a reference to your projects and perform a search/replace.

How to load webutil library on Oracle forms for all users on Citrix?

I have developed an Oracle form which uses webutil functionality. This form works fine when I run it locally. but when I open this form on the Citrix server, it hangs when I try to call webutil library.
This just happens for the Citrix users who are not admin. For the admin users, it works fine because the webutil library is loaded.
Does anyone know how can I fix this so thatthis library loaded for all users?!
When the control of the program reaches "client_ole2.cretae_object('application.excel');" the program hangs.
Many thanks!
Libraries which are installed to be used by Webutil need to be copied to the c:\program files\ java\ jre6 \bin on the Citrix server.
For Forms 10g:
It's usually enough to start your application as the admin once.
The required DLLs will then get copied to "C:\Program Files\Java\jre6\bin", and will then be available for every user.
You have to do this once on every one of your Citrix-Servers of course.
With one of the latest patches for Forms 10g, these DLLs will be stored in each users user-directory, so starting it once as an admin isn't necessary anymore (I think this applies to 11g and 12c too).
If this doesn't work, please provide the output of the Java console.
To get better diagnostics, set the following variables in "formsweb.cfg":
WebUtilLogging=on
WebUtilLoggingDetail=normal
Regards
Markus

LibreOffice - Registered IFilter is not found - Windows 7 x64

I am unable to index contents of LibreOffice files. Files such as .odt files cannot be indexed on Windows Search.
The error says "Registered IFilter is not found"
Any help please?
You installed all the needed optional components i libreoffice installer ?
In the optional features you can select some features that doesn't came in the typical installation.
here is a quick link to a video tutorial an step by step description on how to install LibreOffice
LibreOffice supplies IFilters for 64-bit. Today I updated to 3.6.3.2 on W7_64. The update installed its filters and they did not work. I revert back to the filter from IFilterShop. This one does work (need to read the readme for Vista and W7). Its free for non-commercial usage.
IFilters are used to convert file formats into text for searching. The trouble is that they need to be the same 'bitness' as the app that wants to load them. So if you have a 64-bit app that wants to use the IFilters you need 64-bit IFilters installed.
Have you installed 64-bit Libre Office?

Install microsoft access 1.x on windows xp

I want to install access 1.x to open a mdb file of that type, but I can't install the program and it give me this error:
"install a Windows for Workgroups driver"
Somewhere in internet I find that you need to install from a diskette the odbc:
http://www.experts-exchange.com/Microsoft/Development/MS_Access/Q_22103622.html
but I can't find that diskette nowhere!
What can I do? how can I open this mdb file?
Well, today early morning, i was trying again with this and found that you can import the database using access 2007, like it written in this forum:
http://www.pcreview.co.uk/forums/re-unable-open-access-1-x-file-t1068111.html
"Create a blank database and then use the import feature in the Tables to import the old mdb object.
You may need to do little reformatting but you will see most of the data."
It add you the tables in the new database.
Thanks for the help :D.

Resources