Reputation: 1
We have recently migrated Powerbuilder application from 6 to 2017. We are using MS SQL Server 2012.In PB6 we have used MSS Microsoft SQL Server 6.x as connection string. in PB2017 we have changed the connection string to "SNC SQL Native Client(OLE DB) " . After migration and Build, EXE is working from developer machine but not from User Machine. Copied all SQLNCLI* files to the application folder. but no luck. Please help us to resolve the issue.
Upvotes: 0
Views: 9398
Reputation: 970
You definitely should be using the Microsoft installer for the client, not copying the files. They must be in the system path and there are registry settings the installer will take care of.
Upvotes: 1
Reputation: 3809
Several years ago I wrote a program in PowerBuilder that accessed SQL Server. At the time I had to install the SQL Server Native Client runtime on all the user's machines. I don't know if that's changed since then. This is a quote from a blog post I wrote about it:
On your client machines, in addition to the PB runtimes (including PBSNC120.dll, which is for SQL Server), you also need to install the SQL Server Native Client runtime. These come as an msi installer package from Microsoft. When you install the SQL Server client, you'll need to do so as an administrator.
Upvotes: 0
Reputation: 4174
I believe run times need to be in the PATH and best to use the run time packaging tool that comes with PowerBuilder. You can extract the files from the resultant MSI including extracting the PATH statements.
Did you even bother reading the help file under run time files? This site isn't a free service to do dirty work for you we give (and take) in a reciprocal way. Overlooking since you are new here.
The SQLNCLI* files are Microsoft owned and the PowerBuilder Native run time (pbsnc170.dll) is needed to interact with the SQL layer.
Relating to OLE DB
OLE DB database providers
If your application uses OLE DB to access data, you must install Microsoft's Data Access Components software on each user's computer if it is not installed already.
The PowerBuilder OLE DB interface requires the functionality of the Microsoft Data Access Components (MDAC) version 2.8 or later software.
To check the version of MDAC on a computer, users can download and run the MDAC Component Checker utility from the MDAC Downloads page at http://msdn2.microsoft.com/en-us/data/aa937730.aspx.
On the Windows 7/8.1/10 operating systems, the Windows Data Access Components (DAC) version 6.0 replaces MDAC, and implements the functionality requirements of the PowerBuilder OLE DB interface.
OLE DB Providers
Several Microsoft OLE DB data providers are automatically installed with MDAC and DAC, including the providers for SQL Server (SQLOLEDB) and ODBC (MSDASQL).
PowerBuilder Runtime Packaging
PB 2017 may not include the run time packager tool.
The PowerBuilder Runtime Packager is a tool that packages the PowerBuilder files an application needs at runtime into a Microsoft Windows Installer package (MSI) file. Windows Installer is an installation and configuration service that is installed with newer Microsoft Windows operating systems.
To use the PowerBuilder Runtime Packager:
If your application uses DataWindow XML export or import, check the XML support check box.
If your application uses the XML services provided by the PowerBuilder Document Object Model, or if it is an EJB client or a SOAP Web services client, select the appropriate check boxes.
Upvotes: 1