1. David Peace (Powersoft)
  2. PowerBuilder
  3. Friday, 8 June 2018 11:36 AM UTC

Hi Guys & Gals

I'm deploying to a brand new windows machine a pb2017r2 exe using ADO.NET.

Dot Net 4.5 is installed

I have run the msi installer generated by the package installer and copied over my exe and I'm getting the following error:

Sybase.PowerBuiIder .Db, Version=17.0.0.0, Culture=neutral, PublicKeyToken=98a699138181d746 was not Found.

It looks as though the Sybase.PowerBuilder... DLLs are not registered in the GAC, gacutil is not on the machine so I cannot check this theory.

Has anyone had this before or any ideas how to move forward?

 

*UPDATE*

Just tried dropping the exe in the folder with the sybase dll and turned on ado trace and I get:

/*---------------------------------------------------*/

/*                 08/06/2018  12:39                 */

/*---------------------------------------------------*/

(026B1A78): LOGIN: (33.785 MS / 33.785 MS)

(026B1A78): *** ERROR 999 ***(rc -1) : System.IO.FileNotFoundException: Could not load file or assembly 'Sybase.PowerBuilder.DataSource.Sharing, Version=17.0.0.0, Culture=neutral, PublicKeyToken=98a699138181d746' or one of its dependencies. The system cannot find the file specified.

File name: 'Sybase.PowerBuilder.DataSource.Sharing, Version=17.0.0.0, Culture=neutral, PublicKeyToken=98a699138181d746'

   at Sybase.PowerBuilder.Db.Data.DbBlock..ctor()

   at Sybase.PowerBuilder.Db.Block.SqlBlock..ctor()

   at Sybase.PowerBuilder.Db.DbRoutine.Connect(DbDrivers type, Object[] input, Dbms& dbms, DBVersion& dbVer, String& user)

 

WRN: Assembly binding logging is turned OFF.

To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.

Note: There is some performance penalty associated with assembly bind failure logging.

To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

 

(026B1A78): SHUTDOWN DATABASE INTERFACE: (0.000 MS / 33.785 MS)

Regards

David

mike S Accepted Answer Pending Moderation
  1. Sunday, 7 June 2020 17:53 PM UTC
  2. PowerBuilder
  3. # 1

David,

how did you resolve this?

Comment
  1. mike S
  2. Sunday, 7 June 2020 17:58 PM UTC
Ah, ok, you added "Sybase.PowerBuilder.DataSource.Sharing" since that is the error message.



In my case i had the sybase.powerbuilder.db and dbext.dll's in the path. I moved them to the EXE directory, it then gave the new error that datasource.sharing is missing.
  1. Helpful
  1. David Peace (Powersoft)
  2. Tuesday, 9 June 2020 10:07 AM UTC
To be honest Mike I cannot remember, I guess we added dlls til the problem went away. See sharing dll Sybase.PowerBuilder.DataSource.Sharing.dll



My support guys will have built a release set that works and budled it themselves for deployment to get round the problems.



Hope you get it sorted :)



Cheers



David
  1. Helpful
  1. mike S
  2. Tuesday, 9 June 2020 13:49 PM UTC
thanks, David, yes i did.

just add those 3 dlls to the exe directory (or the gac)
  1. Helpful
There are no comments made yet.
Mathieu Normandeau Accepted Answer Pending Moderation
  1. Thursday, 27 September 2018 19:22 PM UTC
  2. PowerBuilder
  3. # 2

We add this DLL and it work! "Sybase.PowerBuilder.DataSource.Sharing.dll"

Comment
There are no comments made yet.
Ken Guo @Appeon Accepted Answer Pending Moderation
  1. Monday, 11 June 2018 07:32 AM UTC
  2. PowerBuilder
  3. # 3

Hi, 

Please let us know the Windows version you use. Is the exe compiled for 32bit or 64bit platform?
If you install PB IDE on the machine, are you able to run it in PB successfully?
Please let us know the code you use to connect SQLCA to the database, for example:
// Profile sqloleado
SQLCA.DBMS = "ADO.Net"
SQLCA.LogPass = “sql”
SQLCA.LogId = "dba"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Namespace='System.Data.OleDb',Provider='SQLOLEDB',DataSource='192.0.0.15',Database='dev2'"

// Profile sqlclientado
SQLCA.DBMS = "ADO.Net"
SQLCA.LogPass = “sql”
SQLCA.LogId = "dba"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Namespace='System.Data.SqlClient',DataSource='192.0.0.15',Database='dev2'"

If you switch to another machine, install .Net 4.0/4.5 and PB Runtime Package, do you have the same issue?

Regards,
Ken

Comment
  1. David Peace (Powersoft)
  2. Monday, 11 June 2018 08:30 AM UTC
Windows Server 2008R2 - Brand new install, nothing else installed.



Dot Net 4.5 Installed



Standard PB App compiled for 32_Bit. EXE works fine on machine with PB IDE installed.



We did have to copy these DLLs into the folder with the Packager inatsller msi.







Connection Info:



// Profile TDEDB

SQLCA.DBMS = "ADO.Net"

SQLCA.LogPass =

SQLCA.LogId = "tde_user"

SQLCA.AutoCommit = False

SQLCA.DBParm = "Namespace='System.Data.SqlClient',DataSource='pssqldev\pssqldev2014',Database='tde_orders'"





Connect fine with PB IDE and EXE connects fine running one PB IDE Machine.



I have restored the Deployment Machine back to Base Windows state and tried again, still same issues.



Thanks for your Response



David

  1. Helpful
  1. Mathieu Normandeau
  2. Thursday, 27 September 2018 16:06 PM UTC
We have the same issue with that kind of profile:

// Profile sqlclientado

SQLCA.DBMS = "ADO.Net"

SQLCA.LogPass = “sql”

SQLCA.LogId = "dba"

SQLCA.AutoCommit = False

SQLCA.DBParm = "Namespace='System.Data.SqlClient',DataSource='192.0.0.15',Database='dev2'"



Any solution???
  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.