After some research, I found that 'Oracle.DataAccess, Version=2.102.2.20' was not in the GAC. Some files of that version was there but not ''Oracle.DataAccess' althought I install it.
After installing/de-installing many versions of Oracle and ODAC and ODT (Oracle dev tools), then I decided to put Oracle.DataAccess.dll myself in the GAC. But first I made sure It was in my Oracle folder:
'odp.net' of my oracle installtion folder.
I got the same bug in LLBLGen. I tried a C# prog with the same error. But I had more info:
The assembly with display name 'Oracle.DataAccess' failed to load in the 'LoadFrom' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'Oracle.DataAccess, Version=2.102.2.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
File name: 'Oracle.DataAccess, Version=2.102.2.20, Culture=neutral, PublicKeyToken=89b483f429c47342'
=== Pre-bind state informatio ===
LOG: User = IREQHQ\cn1629
LOG: DisplayName = Oracle.DataAccess, Version=2.102.2.20, Culture=neutral, PublicKeyToken=89b483f429c47342
(Fully-specified)
LOG: Appbase = file : ///C : /IreqData/MILE/Dev/Src/HQ/Mile/Presentation/PrototypeLocalisationAnalyse/bin/Debug/
LOG: Initial PrivatePath = NULL
Calling assembly : HQ.Mile.Presentation.MileControles, Version=1.0.3702.30057, Culture=neutral, PublicKeyToken=null.
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\IreqData\MILE\Dev\Src\HQ\Mile\Presentation\PrototypeLocalisationAnalyse\bin\Debug\PrototypeLocalisationAnalyse.vshost.exe.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Publisher policy file is found at C:\Windows\assembly\GAC_32\Policy.2.102.Oracle.DataAccess\2.111.6.0__89b483f429c47342\Policy.2.102.Oracle.DataAccess.config.
LOG: Publisher policy file redirect is found: 2.102.2.20 redirected to 2.111.6.0.
LOG: ProcessorArchitecture is locked to x86.
LOG: Post-policy reference: Oracle.DataAccess, Version=2.111.6.0, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
LOG: Attempting download of new URL file : ///C : /IreqData/MILE/Dev/Src/HQ/Mile/Presentation/PrototypeLocalisationAnalyse/bin/Debug/Oracle.DataAccess.DLL.
LOG: Attempting download of new URL file : ///C : /IreqData/MILE/Dev/Src/HQ/Mile/Presentation/PrototypeLocalisationAnalyse/bin/Debug/Oracle.DataAccess/Oracle.DataAccess.DLL.
LOG: Attempting download of new URL file : ///C : /IreqData/MILE/Dev/Src/HQ/Mile/Presentation/PrototypeLocalisationAnalyse/bin/Debug/Oracle.DataAccess.EXE.
LOG: Attempting download of new URL file : ///C : /IreqData/MILE/Dev/Src/HQ/Mile/Presentation/PrototypeLocalisationAnalyse/bin/Debug/Oracle.DataAccess/Oracle.DataAccess.EXE.
As you can see there is a policy the redirect to another more recent version of Oracle.DataAccess (the policy is hidden in folder only accessible in dos).
I then re-installed the missing redirected newer version of Oracle.DataAccess (ODP).
My C# app started to work but LLBLGEN still don't want to load my project with the following exception (the same one since the beginning):
============ Message ==============
Exception has been thrown by the target of an invocation.
Could not load file or assembly 'Oracle.DataAccess, Version=2.102.2.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
============ Stack trace ============
-----[Core exception]--------------------
at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
at System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
at System.Activator.CreateInstance(Type type, Boolean nonPublic)
at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
at SD.LLBLGen.Pro.ApplicationCore.DBDriverHelper.CreateDBDriverInstance(String assemblyFilename, String namespaceToUse, String className)
at SD.LLBLGen.Pro.Gui.Forms.MainWindow.OpenExistingProject(String filenameToOpen)
-----[InnerException]--------------------
at SD.LLBLGen.Pro.DBDrivers.Oracle10g.OracleDBDriver.FillDBTypeConvertArrays()
at SD.LLBLGen.Pro.DBDrivers.Oracle10g.OracleDBDriver..ctor()
Any suggestion ?
Note: This message had been reformatted a little bit to remove some unwanted smileys near ':'