Why are Microsoft ODBC Driver 18.1.2.1 64bit installed in C:\Windows\system32? - sql-server

I downloaded the lastest Microsoft ODBC Drivers for SQL Server and installed them on my development machine, after that I needed the path to the dll and was very much surprised to find the dll in system32 and not system.
Anybody having an idea why a 64bit component gets in stalled in a folder that explicitly is named system32 ?
Is this a bug or did I misunderstand something behind the naming concept they are using ?

Related

How do I install Oracle Enterprise Repository 12c on Macbook?

I am trying to install the Oracle SOA stack of products on my MacBook but I am stuck at one very crucial point. Need a database on my machine for OER but cannot figure out what to do?
Here is what I have already done:
Successfully installed Oracle SOA Suite 12c
I have downloaded OER
I have tried installing Oracle Database 12c, with Linux version even though as there is no download choice for Mac. I faced following error : ./runInstaller: line 252: /Users/madhu/Oracle/product/18.0.0/dbhome_1/install/.oui: cannot execute binary file
I checked supported database for OER but did not find MySQL or SQLlite or any other product than Oracle and Microsoft SQL server.
Microsoft SQL server is obviously not supported in MacOS
So at the as for OER a database is essential and I cannot install any supported database on MacBook.
Can you please help me?
Even if the installer script doesn't instantly fail, that doesn't mean that the Linux version of ODB 12c will magically work on OS X.
Install ODB or SQL Server on something else and configure OER to connect to it. That "something else" can be a virtual machine running on your Mac.
Install VirtualBox (or your preferred hypervisor);
Install Linux or Windows on a virtual machine;
Install and configure Oracle Database or SQL Server on that VM;
Consult the manual to configure networking for your virtual machine so the database is accessible from your host machine.
WebLogic will run on the Mac but FMW/SOA will not - at least not stable. Neither will the database.
& I know I teach/install/admin these products and am a certified Oracle trainer. I’ve tried...my time was worth more than it took to try and get it to work outside a vm-natively. I assume yours is too.
Unless you are actively trying to learn how to install them, then yes #backgammon is right, install them in a VM.
BUT, if you just want to use them and are not as interested in installation, then use one of the prebuilt -preconfigured FMW virtual box images here that will run on the Mac under virtual box.
Then Install OER in that image.
But, be advised OER is no longer sold by Oracle, even though it’s available for download.
It has been replaced by the API cloud service product.

Where are ODBC drivers for MFC

I'm trying to create MFC application with DB support and during the project setup process I'm being asked to point out to location of ODBC drivers which are apparently provided with VS: https://msdn.microsoft.com/en-us/library/5f67e3x4.aspx
For the life of me I cannot find them.
Any help appreciated.
Starting with Windows XP and Windows Server 2003, ODBC drivers ship with Windows. They are located at
%WINDIR%\System32
and
%WINDIR%\SysWOW64
(for 32-bit applications running on 64-bit Windows)

Oracle SQL Developer connection to Microsoft SQL Server

I have been trying without any success to get the latest version of Oracle SQL Developer (4.0.2) to connect to Microsoft SQL server using Windows authentication. I have downloaded and copied the ntmlauth.dll (and also JtdsXA.dll) file from jtds-1.3.1-dist to every location I can think of that developer would be looking for it but when I try and set up a new connection via the SQLServer tab clicking on the "Use Windows Authentication" option, all I get is the message "Status: Failure -I/O Error: SSO Failed: Native SSPI library not loaded. Check the java.library.path system property." I can however connect to the database using Toad for SQL Server or SSMS without any problems, but would prefer if possible to use SQL Developer.
Just copy ..\jtds-1.3.1-dist\x64\SSO\ntlmauth.dll to -> ..\sqldeveloper\jdk\jre\bin folder for x64 systems. Copy-paste similar folder contents for x86 systems as well.
I had the exact same problem. I eventually got it to work by placing the ntlmauth.dll in the jdk\jre\bin folder under the sql-developer directory itself. For some reason sql-developer ships with its own jdk, which I found by browsing around. I spent hours trying to figure out why the placement of the aforementioned DLL in the various system level jre directories (i.e. C:\Program Files\Java\jre7\bin) didn't work.
If anyone here knows why placement of ntlmauth.dll in the sql-developer\jdk\jre\bin folder worked while placement in the system level jre folders did not I would be interested.
My OS = Windows 2007 64-bit
jtds = jtds-1.2.7
The reason is pretty simple; SQLDEVELOPER doesn't know about the system level jre that was installed. Oracle bundles SQLDEVELOPER with and without JAVA. If you downloaded the one without java then when you first start the app you will be prompted for the location of the java_home. If you install the SQLDEVELOPER version that already has java installed then it just works -- no prompt. In your case, you installed the version with java already packaged with the app.
So the root of the question then is the system level jre is not used by SQLDEVELOPER (in your particular installation) so the ntlmauth.dll that you placed in that directory is never used.
After adding jTDS drivers (jtds-1.3.1) to Oracle SQL Developer (Tools->Preferences->Database->Third Party JDBC Drivers), I located the SQL Developer's ide.conf file and added the following lines:
#jTDS
Add64VMOption -Djava.library.path=../../drivers/jtds-1.3.1-dist/x64/SSO
Add32VMOption -Djava.library.path=../../drivers/jtds-1.3.1-dist/x86/SSO
This adds to JVM Library Path the location of ntlmauth.dll library

SQL Server Compact error: Unable to load DLL 'sqlceme35.dll'. The specified module could not be found

I'm developing a Windows Forms application using Visual Studio 2008 C# that uses an SQL Server Compact 3.5 database on the client. The client will most likely be 32 bit Windows XP or Windows Vista machines. I'm using a standard Windows Installer project that creates an MSI file and setup.exe to install the application on a client machine. I'm new to SQL Server Compact, so I haven't had to distribute a client database like this before now. When I run the setup.exe (on new Windows XP 32 bit with SP2 and Internet Explorer 7) it installs fine, but when I run the application I get this error:
Unable to load DLL 'sqlceme35.dll'. The specified module could not be found
I spent a few hours searching for this error already, but all I could find were issues relating to installing on 64 bit Windows and none relating to normal 32 bit that I'm using.
The install application copies the all the dependent files that it found into the specified install directory, including the System.Data.SqlServerCe.dll file (assembly version 3.5.1.0). The database file is in a directory called 'data' off the application directory, and the connection string for it is
<add name="Tickets.ieOutlet.Properties.Settings.TicketsLocalConnectionString" connectionString="Data Source=|DataDirectory|\data\TicketsLocal.sdf" providerName="Microsoft.SqlServerCe.Client.3.5" />
Some questions I have:
Should the application be able to find the DLL file if it's in the same directory, that is, local to the application, or do I need to install it in the GAC? (If so, can I use the Windows Installer to install a DLL file in the GAC?)
Is there anything else I need to distribute with the application in order to use a SQL Server Compact database?
There are other DLL files also, such as MS interop for exporting data to Excel on the client. Do these need to be installed in the GAC or will locating them in the application directory suffice?
You don't need it to be in the GAC for SQL Server Compact to run, and it will pick them up from the application directory. There are several ways to deploy an SQL Server Compact project. The two main ways are:
Deploying the SQL Server Compact redistributable installer with your project, but this way is painful and also can be unistalled by the end user, or upgraded by Windows updates and breaking your application.
Including the DLL files in your application folder. Depending on the features of SQL Server Compact you are using (replication or whatever), there is a handful of DLL files to deploy in your application folder.
If you have SQL Server Compact installed on your machine, they are most likely located at "C:\Program Files\Microsoft SQL Server Compact Edition\v3.5". They can be added to the project in Visual Studio and then set their project output type to "copy always". And the main reference to System.Data.SqlServerCe that you have in your project references should have copy local set to true.
sqlceca35.dll
sqlcecompact35.dll
sqlceer35en.dll
sqlceoledb35.dll
sqlceqp35.dll
sqlcese35.dll
If you have these all set, then in your installer project all you have to include is the project output of this project and you're good. In my opinion this is the only way to go. It is a simple deployment, of a couple of files and you are in control of what DLL versions your application uses.
I hope that helps.
I had a similar problem, a Visual Studio 2008 Windows application targeting 32-bit Windows XP and Windows Vista that used SQL Server Compact 3.5 SP1 - that then got this error when installed on 64-bit Windows 7:
Unable to load DLL 'sqlceme35.dll'. The specified module could not be found
I was embedding an MSI for SQL Server Compact into the installer for the application.
Following this rather confused discussion on MSDN revealed that I needed to use the 64-bit MSI for SQL Server Compact on 64-bit machines. D'oh! That is, from page Microsoft SQL Server Compact 3.5 Service Pack 1 and Synchronization Services for ADO.NET version 1.0 Service Pack 1 for Windows Desktop I needed SSCERuntime-ENU-x64.msi rather than SSCERuntime-ENU-x86.msi for 64-bit machines.
How to: Deploy a SQL Server Compact Edition Database with an Application should help, at least with your first two questions.
In general, I think you should not install anything in the GAC for a single application.
The following provide a solution to the problem and an explanation also.
Troubleshooting: Can’t load SQL Server Compact DLL
SqlCeException on application's first use of SQL Server Compact
Laxmi Narsimha Rao Oruganti 's blog
I hope this helps.

How to install Visual Studio 2008 and MS SQL Server 2008 in Ubuntu?

I would like to install Visual Studio 2008 and MS SQL Server 2008 on Ubuntu OS which I have in my PC.
Wine is great, but using it for either Visual Studio or MS SQL Server is probably pushing it. Both are behemoths that tend (especially VS) to use the latest MS APIs. More to the point, both VS and MSSQL are listed as Garbage in Wine's db, meaning compatibility is very poor.
I would recommend you take a serious look at the available tools on GNU/Linux, such as MonoDevelop, Mono, Eclipse, MySQL, etc. You can use cross-platform build technologies, such as nant to build the same apps on both platforms.
If that isn't an option, then you will have to resort to virtualization, as noted by sean.
This answer might help you. Visual Studio and SQL Server are for Windows OS variants. You'll need some sort of VM to run on Ubuntu.
If you have some sort of Windows OS disks available to you (XP / Vista / 2008), then you could consider installing Windows under VirtualBox, and installing your software inside that VM. That used to work really well for me when I was still on Ubuntu.
I've been developing using Visual Studio in Ubuntu since version 10.04, and there is a solution, although I would recommend that you run the 64 bit version of Ubuntu and have at least 4Gb of ram available.
Install the latest version of VirtualBox (download from the website, rather than using the ubuntu repository), and install Windows as a virtual machine. You need to allocate a virtual disk and then, when the virtual machine starts for the first time, either install Windows from a CD/DVD, or select a CD image to use within VirtualBox.
You will also see, with the later versions of VirtualBox, something called "seamless mode". This essential hides the virtual machine, so that instead of running in a window, it will integrate with the Ubuntu desktop. That way, you can run Visual Studio in what looks to be native to Ubuntu.
I have tried both VMWare Player and VirtualBox and found VirtualBox to be better for my setup. Although VMWare Player has something called VMWare tools, which provides an API layer to better translate Windows calls to your video card, this can be temperamental if you're using an ATI card (speaking from experience with a Mobility Radeon HD 4600). Nvidia provide much better driver support in Linux than ATI do.
Hope this helps!
I think is better to simply dual boot to write your .net code. It will put your hardware to better use, and you will be able to focus more since all the programs on which you waste your time will be on the linux side :D (at least that's the upside for me)
To use Visual Studio 2008 and MS SQL Server 2008 in any Linux..
Just try sharpdevelop: http://www.icsharpcode.net/opensource/sd/

Resources