How to run a win32 native application that requires sql server native client on MacOSX with winebottler? - delphi

I am experimenting with WineBottler and I would like to try to run my win32 native application written in Delphi on OSX.
The application runs, but I stop at login screen since I cannot connect to SQL Server.
Does anyonw know how to install and configure SQL Server native client on OSX so that it is usable with WineBottler?
Note: I put "wine" as tag since "winebottler" is not available.

I have a Delphi application that uses MDAC 2.8 for ADO connection to the Jet provider. I use Winetricks to install MDAC 2.8, and it works great. If you can't get SQL Server Native Client to install, perhaps your application can use the OLEDB SQL Server provider by tweaking your connection strings. Are you using any features that are only in SQL Server Native Client?

You would have a lot less trouble if you put in some middleware like kbmMW, Remote Objects, or DataSnap. All of them can use plain TCP/IP (via http or like higher level protocol), and don't require client side libs. You will need an extra server, but it is easy to create one that just forwards your SQL and data between clients and SQL server. Note that SQL server licensing remains.
On the other hand, you can try to install SQL Server native client, some older version of it - eg. for SQL Server 2005, in that "bottle" with your application. Yet, I'm not sure if that is legal thing to do. I think that MS prohibits native client installation on OS other than Windows.
There is FreeTDS native client that works with MSSQL from unices, but it is not ported to be usable from Delphi (like dbx driver).

Related

DBX Error in Delphi Berlin 64bit compiler: Driver could not be properly initialized. When connecting to a Oracle 12c DB Server

I got the stopper error below in my apps. I used Delphi Berlin 64bit compiler. And also used the dbxora.dll as dbxpress driver default from embarcadero. Connected to Oracle 12c DB server using TSQLConnection component.
DBX Error: Driver could not be properly initialized. Client library may be missing, not installed properly, of the wrong version, or the driver may be missing from the system path.
How can I fix this?
A DB Express driver is not always sufficient on it's own to connect to some data sources. For certain data sources (most of them in fact) you also require the client drivers for that data source, usually provided by the database vendor themselves.
Oracle is one of these.
As well as the DB Express driver you also need to install the Oracle Client software provided by Oracle. You also need to ensure that you install the correct version.
i.e. in your case since you indicate you are building a 64-bit application then you will need the 64-bit Oracle client.
If you (or your intended users) already have the 32-bit Oracle client installed then you might consider building your application as a 32-bit application instead, unless you absolutely need 64-bit capabilities.

Pervasive SQL v.11 ODBC Client Interface

I have Pervasive PSQL v.11 server but no PervasiveClient Interface driver on it. I looked for answer and what i found is to install Pervasive Client on server but i am afraid that it may mess the server or configuration. So I am looking for any way to install that driver without installing client application.
When you install the Pervasive Server, it installs the client as well. You should have the Pervasive Client Interface. Make sure you are using the 32 bit ODBC Administrator. It is located in the %systemdrive%\windows\syswow64\odbcad32.exe. The ODBCAD32.EXE in %systemdrive%\Windows\System32 is 64 bit. I know it seems backward but that's how Microsoft did it.
If you are seeing just the "Pervasive ODBC Interface", you are using the 64 bit ODBC Administrator.
Another option would be to use the Pervasive Control Center. It can create the 32 bit DSN when creating the database. It also has menu options (under Tools) for the 32-bit and 64-bit ODBC Administrator.

DBX error in Delphi XE3, when connecting to a SQL Server database

When I try to connect to a MS SQL Server database using DBX an error pops up saying that the driver is not properly installed, or missing. I tried with ADO driver and it worked like charm, but the thing is that I need DBX driver to work because I want to modify an app that has been developed with DBX technology.
I reinstalled Delphi XE3, and also asked a friend of mine to test it and the error is the same. Does somebody has any ideea on how to solve it ?
The exactly message was this:
Borland.Data.TDBXError: DBX Error: Driver could not be properly
initialized. Client library may be missing, not installed properly,
of the wrong version, or the driver may be missing from the system
path.
I must mention that I tried it on a local instance of MSSQL Server 2012 and on a remote MSSQL Server 2008 instance. My OS win8 x64;
Best regards,
This is most likely caused by the wrong version of the SQL Native Client installed on your system. DBX will only work with V10, while you probably have V11 installed. Try to install the V10 version of the client.

How to connect to a legacy Informix database?

I have to connect my app to a customer's Informix 7.2 legacy database.
From what I was able to find out, in theory there should be a database service running on port 50000. The problem is that I cannot find any database service in the Operative System.
So far I'm only able to use dbaccess and perform queries from the command line.
I would like to use a database driver (such as http://code.google.com/p/ibm-db/) so my app can connect and query the database using a cursor, but since I cannot find any database service, apparently I can't...
Am I missing something here? Are there options I'm not considering?
Is it possible to have an Informix database in which the only interface is dbaccess?
See connection strings for Informix
If you use Python you can look at: Python wiki but I would like to extend it a little.
If you work on Windows and have Client SDK then there should be ODBC driver installed on your machine. There is also Linux and other unix versions of such client software. If you install that you can use ODBC to connect to database. On Windows you can use Active State Python 2.6 with win32 extensions which has odbc module included. On other Python implementations you can use win32 extensions or other ODBC module such as mxODBC.
I work also with Jython where I use both JDBC and ODBC drivers. You can see this "in action" in my SO questions like: Problem with Informix JDBC Money format
BTW, if you want to connect to a remote legacy Informix database using Python from a Mac, pypyodbc-informixcsdk could be your only (free) choice. Check this wiki.
On a Windows box, pyodbc + Informix Client SDK + ODBC do the job nicely.

Can you install Silverlight 3 Tools on Server 2008 (64bit)

I have been able to install 'VS2008 SP1' and 'VS2008 Tools for Silverlight' on my Windows Server 2008 development machine, but I have not been able to install the MSI for 'Silverlight Toolkit July 2009'. The install fails with the following:
"The system administrator has set policies to prevent this installation"
I am a local admin on the box. I have seen something similar when try to to 32-bit MSI on a 64-bit machine. Is that the problem that I am having?
I don't think that you need to install the SL toolkit on the server. At least, we haven't had to. We're using 64-bit Windows Server 2003, and any required Silverlight DLLs, etc., just get included in our .xap file, and get downloaded by the client when it downloads that file. All the server knows is that it's got to pass the .xap file down to a client when it requests it. The only thing that any server-side process might need to know about is the System.ServiceModel.PollingDuplex.dll (if you're using duplex WCF services), but if you simply install the SL 3.0 SDK on your dev machine, and then reference that DLL from your WCF project, it'll get included with your WCF project when you roll it out to the server in question.
The only reason you'd need to install those things on the server is if you're planning to do development on the server, which I suppose you might want to, but certainly isn't normal :-).

Resources