Visual Studio Borland DLL Error

I run the application in Visual Studio 2012, it works like a charm, but when I try to run the .exe file in the bin folder, I get this error:

System.IO.FileLoadException: Could not load file or assembly       'Borland.Data.DbxCommonDriver, Version=16.0.0.0, Culture=neutral, PublicKeyToken=a91a7c5705831a4f' or one of its dependencies. The located assembly manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'Borland.Data.DbxCommonDriver, Version=16.0.0.0, Culture=neutral, PublicKeyToken=a91a7c5705831a4f'
at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)
at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
at System.Reflection.Assembly.Load(String assemblyString)
at Borland.Data.TClassRegistryPackageItem..ctor(String PackageName)
at Borland.Data.TClassRegistry.RegisterPackageClass(String ClassName, String PackageName)
at Borland.Data.Units.DBXCommon.RegisterClassLoader(TDBXProperties DriverProperties, String ClassNameProp, String ClassNameDefault, String PackageNameProp, String PackageDefault, String& ResultPackageName)
at Borland.Data.TDBXDriverRegistry.GetDriver(TDBXDriverDef DriverDef)
at Borland.Data.TDBXConnectionFactory.GetDriver(String DriverName, TDBXProperties DriverProperties)
at Borland.Data.TDBXConnectionBuilder.CreateConnection()
at Borland.Data.TDBXConnectionFactory.GetConnection(TDBXContext DBXContext, TDBXProperties ConnectionProperties)
at Borland.Data.TAdoDbxConnection.Open()
at ProjectGroep9.LoginForm.connSuccess() in c:\Users\Tom\Project2TI\trunk\ProjectGroep9\ProjectGroep9\LoginForm.cs:line 146
at ProjectGroep9.LoginForm.bevestigLabel_Click(Object sender, EventArgs e) in c:\Users\Tom\Project2TI\trunk\ProjectGroep9\ProjectGroep9\LoginForm.cs:line 58
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Label.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

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].

UPDATE: Visual studio, when it throws an error, says: it is not possible to load the assembly Borland.Data.DbxCommonDriver, Version = 16.0.0.0, Culture = neutral,
  PublicKeyToken = a91a7c5705831a4f or one of its dependencies.

The PowerShell command gives me the following output for the .dll file in the interbaseAdo.NETDriver program files folder:

Borland.Data.DbxCommonDriver, Version=16.0.0.0, Culture=neutral,   
PublicKeyToken=91d62ebb5b0d1b1b
+3
source share
1 answer

​​Embarcadero RAD Studio (, Delphi XE2), , dbExpress , , Embarcadero ADO.NET 2.0.

, , app.config Visual Studio :

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <startup> 
       <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
   </startup>

   <system.data>
    <DbProviderFactories>      
      <remove invariant="Borland.Data.AdoDbxClient" />
      <add name="AdoDbx Data Provider" invariant="Borland.Data.AdoDbxClient"   
           description=".Net Framework Data Provider for dbExpress Drivers" 
           type="Borland.Data.TAdoDbxProviderFactory, Borland.Data.AdoDbxClient, 
           Version=16.0.0.0, Culture=neutral, PublicKeyToken=91d62ebb5b0d1b1b"/>
      <remove invariant="Borland.Data.DbxClientDriver" />
      <add name="Datasnap AdoDbx Data Provider" invariant="Borland.Data.DbxClientDriver" 
           description=".Net Framework Data Provider for Datasnap"   
           type="Borland.Data.TAdoDbxDatasnapProviderFactory, 
           Borland.Data.DbxClientDriver, Version=16.0.0.0, Culture=neutral, 
           PublicKeyToken=91d62ebb5b0d1b1b"/>      
    </DbProviderFactories>
   </system.data>  
</configuration>

, . dbExpress 'dbxdrivers.ini' 'dbxconnections.ini'. , . Embarcadero.

, . dbProviderFactories ( ), , dbExpress . ( ):

public InterbaseTest()
{
  if (null == this.Connection)
  {
    try
    {
       /* First list all installed and registered DbProviderFactories */
      System.Data.DataTable dt = System.Data.Common.DbProviderFactories.GetFactoryClasses();
      for (int i = 0; i < dt.Rows.Count; i++)
         Console.WriteLine("{0}: {1}", i.ToString(), dt.Rows[i][2].ToString());

       Console.WriteLine("------------------------------------------------------\n");


       this.Connection = new TAdoDbxConnection(
         string.Format("DriverName=Interbase;Database={0};", this.DatabasePath) +
         "RoleName=RoleName;User_Name=sysdba;"+
         "Password=masterkey;SQLDialect=3" +                            
         "MetaDataAssemblyLoader=Borland.Data.TDBXInterbaseMetaDataCommandFactory," +
         "Borland.Data.DbxReadOnlyMetaData,Version=11.0.5000.0,Culture=neutral," +
         "PublicKeyToken=91d62ebb5b0d1b1b;GetDriverFunc=getSQLDriverINTERBASE;" +
         "LibraryName=dbxint30.dll;VendorLib=GDS32.DLL"
       );
    }
    catch (Exception ex)
    {
      MessageBox.Show(ex.Message);
    }
  }
}

, this.Connection dbConnection, #.

, !

Embarcadero RAD Studio , .ini. , .

'dbxconnections.ini' :

[IBConnection]
;DelegateConnection=DBXTraceConnection
DriverName=Interbase
Database=database.gdb
RoleName=RoleName
User_Name=sysdba
Password=masterkey
ServerCharSet=
SQLDialect=3
ErrorResourceFile=
LocaleCode=0000
BlobSize=-1
CommitRetain=False
WaitOnLocks=True
IsolationLevel=ReadCommitted
Trim Char=False

'dbxdrivers.ini ( ) :

[Installed Drivers]
DBXTrace=1
DBXPool=1
Interbase=1
MySQL=1 

[DBXPool]
DelegateDriver=True
DriverName=DBXPool
DriverUnit=Data.DBXPool
DriverPackageLoader=TDBXPoolDriverLoader,DBXCommonDriver160.bpl
DriverAssemblyLoader=Borland.Data.TDBXPoolDriverLoader,Borland.Data.DbxCommonDriver,Version=16.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b

[DBXTrace]
DelegateDriver=True
DriverName=DBXTrace
DriverUnit=Data.DBXTrace
DriverPackageLoader=TDBXTraceDriverLoader,DBXCommonDriver160.bpl
DriverAssemblyLoader=Borland.Data.TDBXTraceDriverLoader,Borland.Data.DbxCommonDriver,Version=16.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b

[AutoCommit]
False=0
True=1

[BlockingMode]
False=0
True=1

[WaitOnLocks]
False=1
True=0

[CommitRetain]
False=0
True=1

[OS Authentication]
False=0
True=1

[Multiple Transaction]
False=0
True=1

[Trim Char]
False=0
True=1

[SQLDialect]
1=0
2=1
3=2


[Interbase]
DriverUnit=Data.DBXInterBase
DriverPackageLoader=TDBXDynalinkDriverLoader,DbxCommonDriver160.bpl
DriverAssemblyLoader=Borland.Data.TDBXDynalinkDriverLoader,Borland.Data.DbxCommonDriver,Version=16.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b
MetaDataPackageLoader=TDBXInterbaseMetaDataCommandFactory,DbxInterBaseDriver160.bpl
MetaDataAssemblyLoader=Borland.Data.TDBXInterbaseMetaDataCommandFactory,Borland.Data.DbxInterBaseDriver,Version=16.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b
GetDriverFunc=getSQLDriverINTERBASE
LibraryName=dbxint.dll
LibraryNameOsx=libsqlib.dylib
VendorLib=GDS32.DLL
VendorLibWin64=ibclient64.dll
VendorLibOsx=libgds.dylib
BlobSize=-1
CommitRetain=False
Database=database.gdb
ErrorResourceFile=
LocaleCode=0000
Password=masterkey
RoleName=RoleName
ServerCharSet=
SQLDialect=3
IsolationLevel=ReadCommitted
User_Name=sysdba
WaitOnLocks=True
Trim Char=False

[Interbase TransIsolation]
ReadCommited=1
RepeatableRead=2

[MYSQL]
DriverUnit=Data.DBXMySQL
DriverPackageLoader=TDBXDynalinkDriverLoader,DbxCommonDriver160.bpl
DriverAssemblyLoader=Borland.Data.TDBXDynalinkDriverLoader,Borland.Data.DbxCommonDriver,Version=16.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b
MetaDataPackageLoader=TDBXMySqlMetaDataCommandFactory,DbxMySQLDriver160.bpl
MetaDataAssemblyLoader=Borland.Data.TDBXMySqlMetaDataCommandFactory,Borland.Data.DbxMySQLDriver,Version=16.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbxmys.dll
LibraryNameOsx=libsqlmys.dylib
VendorLib=LIBMYSQL.dll
VendorLibWin64=libmysql.dll
VendorLibOsx=libmysqlclient.dylib
BlobSize=-1
Database=DBNAME
ErrorResourceFile=
HostName=ServerName
LocaleCode=0000
Password=password
User_Name=user
Compressed=False
Encrypted=False

.ini , , .

+7

All Articles