我们最近将Powerbuilder应用程序从6迁移到了2017年。我们使用的是MS SQL Server 2012。在PB6中,我们使用了MSS Microsoft SQL Server 6.x作为连接字符串。在PB2017中,我们已将连接字符串更改为"SNC SQL Native Client(OLE DB)“。迁移和构建后,EXE在开发人员计算机上工作,而不是在用户计算机上工作。已将所有SQLNCLI*文件复制到应用程序文件夹。但没那么走运。请帮助我们解决此问题。
发布于 2018-04-06 07:36:29
我认为运行时需要在PATH中,最好使用PowerBuilder附带的运行时打包工具。您可以从生成的MSI中提取文件,包括提取路径语句。
你有没有读过运行时文件下的帮助文件?这个网站不是为你做脏活的免费服务,我们以一种互惠的方式给予(和接受)。因为你是新来的,所以可以俯视。
SQLNCLI*文件为微软所有,需要SQL本机运行时(pbsnc170.dll)与PowerBuilder层进行交互。
与OLE DB相关的
OLE DB数据库提供程序
如果您的应用程序使用OLE DB访问数据,则必须在每个用户的计算机上安装Microsoft的数据访问组件软件(如果尚未安装)。
Microsoft接口需要PowerBuilder数据访问组件(MDAC2.8版或更高版本)软件的功能。
若要检查计算机上的MDAC版本,用户可以从http://msdn2.microsoft.com/en-us/data/aa937730.aspx上的MDAC下载页下载并运行MDAC组件检查器实用工具。
在Windows7/8.1/10操作系统上,Windows数据访问组件版本6.0取代了PowerBuilder数据访问组件,并实现了Windows接口的功能要求。
OLE DB提供程序
多个Microsoft OLE DB数据提供程序与MDAC和DAC一起自动安装,包括SQL Server (SQLOLEDB)和ODBC (MSDASQL)的提供程序。
PowerBuilder运行时打包
PB 2017可能不包括运行时打包工具。
MSI运行时打包程序是一个工具,用于将应用程序在运行时需要的PowerBuilder文件打包到Microsoft Windows Installer包(MSI)文件中。Windows Installer是随较新的Microsoft Windows操作系统一起安装的安装和配置服务。
使用PowerBuilder运行时打包程序的:
发布于 2018-04-10 07:48:34
您绝对应该为客户端使用Microsoft installer,而不是复制文件。它们必须在系统路径中,并且安装程序会处理注册表设置。
发布于 2018-04-06 23:05:59
几年前,我用PowerBuilder写了一个访问SQL Server的程序。当时,我必须在所有用户的计算机上安装SQL Server Native Client运行时。我不知道从那以后这种情况是否改变了。这是我写的一篇blog post中的一句话:
在客户机上,除了PB运行时(包括用于SQL Server的PBSNC120.dll )外,还需要安装SQL Server Native client运行时。这些都是微软提供的msi安装程序包。安装SQL Server客户端时,您需要以管理员身份执行此操作。
https://stackoverflow.com/questions/49626524
复制相似问题