Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for Oracle
Post Reply
Feneck91
Posts: 50
Joined: Mon 12 Aug 2013 13:52

Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Feneck91 » Fri 20 Sep 2013 09:24

My compagny have bought a professionnal licence of dotConnect 7.9

Since I have installed it, when I run the software I have a message indicate The provider did not return a ProviderManifestToken string.

I have used Tools/Oracle/Upgrade Wizard to update my solution into Visual Studio 2012, but no files have been updated and no project modification has been done (all is up to date).

This project is working fine on VMWare Workstation with trial Licence (my computer was just migrate from XP 64 to Seven to be able to use Visual Studio 2012).

My be I need to generate some licence somewhere but I don't know what I should do.
I Have read some post here but it seems to be different problem.

Any idea ?

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Shalex » Fri 20 Sep 2013 15:42

Please post here the call stack of the error with its inner exception.

Feneck91
Posts: 50
Joined: Mon 12 Aug 2013 13:52

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Feneck91 » Mon 23 Sep 2013 08:19

Inner exception : Can not obtain Oracle client information from registry. Make sure that Oracle Client Software is installed, or use Direct mode of connecting to server.

Stack Trace : à System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection)
à System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices providerServices, DbConnection connection)

I have installed Oracle with Admin account (with local account) and work with Domain account without administrator rights.

Pinturiccio
Devart Team
Posts: 2420
Joined: Wed 02 Nov 2011 09:44

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Pinturiccio » Wed 25 Sep 2013 14:42

1. Make sure that Oracle Client software is installed on your computer;
2. Make sure that capacity (x86 or x64) of your application and capacity of your Oracle Client are the same. You can check the capacity of the process of your application in Task Manager.

Feneck91
Posts: 50
Joined: Mon 12 Aug 2013 13:52

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Feneck91 » Fri 27 Sep 2013 09:33

The same application works on VMWare, same OS (Windows 7) (same source code, only connection string is different).
This code works fine (test code to know if I can connect to database or not) :

Code: Select all

      string constr = "User Id=myuserr; Password=mypassword; Data Source=localhost:1521/orcl.TOPOBASE.msy.tcfr.thales;Unicode=true;";
    string ProviderName = "Devart.data.Oracle";

    DbProviderFactory factory = DbProviderFactories.GetFactory(ProviderName);

    using (DbConnection conn = factory.CreateConnection())
    {
      try
      {
        conn.ConnectionString = constr;
        conn.Open();

        //Get all the schema collections and write to an XML file. 
        //The XML file name is Oracle.ManagedDataAccess.Client_Schema.xml
        DataTable dtSchema = conn.GetSchema();
        dtSchema.WriteXml(ProviderName + "_Schema.xml");
      }
      catch (Exception ex)
      {
        MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error);
        Console.WriteLine(ex.Message);
        Console.WriteLine(ex.StackTrace);
      }
    }
  }
The code used with entity framework with same connexion string doesn't work !
Using DbConnection as :
m_InstanceDbConnection = new OracleConnection("User Id=myuserr; Password=mypassword; Data Source=localhost:1521/orcl.TOPOBASE.msy.tcfr.thales;Unicode=true;");
And using this DbConnection to construct my DbContext derived class (pass it to base constructor). It's work fine into my virtual machine Windows 7 (VMWare)

This kind of error can be due to bad connexion string / bad user right or only licence problem ?
How to update licence ? How to know if my licence is good or not ?

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Shalex » Fri 27 Sep 2013 15:13

Feneck91 wrote:Inner exception : Can not obtain Oracle client information from registry. Make sure that Oracle Client Software is installed, or use Direct mode of connecting to server.
This error has nothing to do with licensing. The possible reasons of the problem:
1) Oracle Client is not installed on your workstation where you are running the code. Check the workability of your Oracle Client with some tool (e.g.: SQL Plus)
2) Oracle Client software is installed but the capacity (x86 or x64) of the process of your application and capacity of your Oracle Client are not the same. You can check the capacity of the process of your application with Windows Task Manager

If you do not want to use Oracle Client, please switch to the Direct Mode: http://www.devart.com/dotconnect/oracle ... tmode.html.

Feneck91
Posts: 50
Joined: Mon 12 Aug 2013 13:52

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Feneck91 » Mon 30 Sep 2013 08:52

When I connect with SQL Plus I have :
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Same with my VMWare workstation. Same project and it's not working.
I have change my source code to use direct mode : it's work right now !

Hope I will not have problems with some incompatibility due to direct connection mode (I have read the 'Direct Mode Compared to OCI Mode' paragraph).

Thanks this problem is resolved by changing connection mode but I have not understand why it don't work in another mode.

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Shalex » Mon 30 Sep 2013 15:34

Feneck91 wrote:I have not understand why it don't work in another mode.
Make sure that capacity (x86 or x64) of the process of your application and capacity of your Oracle Client are the same. You can check the capacity of the process of your application with Windows Task Manager.

Feneck91
Posts: 50
Joined: Mon 12 Aug 2013 13:52

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Feneck91 » Fri 25 Oct 2013 08:06

All is same but it not work. Have found a workaround, working with direct connection mode, but I'll perharps have some others problems later because this mode seem to be less compatible with Oracle...

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Shalex » Fri 25 Oct 2013 15:52

Feneck91 wrote:Make sure that capacity (x86 or x64) of the process of your application and capacity of your Oracle Client are the same. You can check the capacity of the process of your application with Windows Task Manager.
Sorry but you haven't specified explicitly if the modes (x86 or x64) of the process of your application and Oracle client coincide.

If your application is a web application, check the capacity of the web server on which you deployed it.

Feneck91
Posts: 50
Joined: Mon 12 Aug 2013 13:52

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Feneck91 » Fri 25 Oct 2013 17:55

All mode are x86, using .NET framework 4.0 to be able to make the software works on Windows XP 32.
It's a CSharp software, not a web one. The client of my application and Oracle client coincide (x86).
Really strange...
Same into my workstation under VMWare but the connection works fine.

Pinturiccio
Devart Team
Posts: 2420
Joined: Wed 02 Nov 2011 09:44

Re: Update to dcoracle79pro : The provider did not return a ProviderManifestToken string

Post by Pinturiccio » Mon 28 Oct 2013 16:44

Please check the following on your workstation where you are getting the issue:
1. Is there the following key, corresponding to your Oracle Client, in the registry on your computer:
- For x64 worstation: [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\]
- For x86 worstation: [HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\]
2. Does the user account that is used to run your application have access to this registry key?
3. Is the path to your Oracle Client included to the PATH environment variable?
4. Can this issue be reproduced with the ODP.NET provider?

Post Reply