Josh-
Hartelijk dank voor het nemen van de tijd om te antwoorden. Je instructies hebben heel veel geholpen en komen heel dicht in de buurt van wat ik zelf heb gevonden.
Interessant genoeg vond ik dat het iets meer kan worden afgeslankt.
Voor degenen in mijn situatie die
- Wil niet dat hun gebruikers ODAC of de volledige Oracle Client moeten installeren
- Maak je geen zorgen over de herbruikbaarheid van de specifieke clientinstallatie
- Een "clickOnce"-compatibele oplossing nodig
Ik heb een manier gevonden om dat te doen.
a. Download de "Oracle Instant Client 11.1.0.6 - Basic Lite".b. pak het uit naar een willekeurige map en kopieer de volgende bestanden naar de hoofdmap van uw Visual Studio-project:
- oci.dll
- ociw32.dll
- orannzsbb11.dll
- oraocci11.dll
- oraociicus11.dll
-
msvcr71.dll (niet nodig, zou bij de meeste Windows-versies moeten worden geleverd)
(de eerste vijf zijn het minimum dat nodig is voor de Oracle Instant Client, de laatste is de algemene Microsoft-runtime die ze gebruiken.)
c. Download de ODAC 11 XCopy (de huidige versie is 11.1.0.6) en pak het uit.
-
OraOps11w.dll - in de map odp.net20, gaat naar de hoofdmap van uw project.
(dit bestand is waar de Oracle.DataAccess.dll mee praat en gebruikt om met de Instant Client-bestanden te werken).
d. Voor compatibiliteit met ClickOnce-implementatie selecteert u deze bestanden in uw project en zorgt u ervoor dat ze "Content" en "Copy Local" in uw project zijn. Het manifest zal ze dan correct inzetten.
Resultaat.. . de payload die aan je project wordt toegevoegd, is 30 MB, wat een beetje klote is, maar veel beter dan 100+ of 400+, ondersteunt westerse karakters, maar dat is een schot in de roos
- het vereist geen pad,
- vereist geen registervermeldingen,
- is geïsoleerd tijdens implementatie en verslindt geen andere Oracle Client-installaties,
- werkt alle DB's terug tot en met 9.2.