Josh-
Děkuji mnohokrát, že jste si udělal čas na odpověď. Vaše pokyny hodně pomohly a jsou velmi blízké tomu, co jsem našel sám.
Je zajímavé, že jsem zjistil, že se dá ještě trochu zeštíhlit.
Pro ty v mé situaci, kteří
- Nechcete, aby jejich uživatelé museli instalovat ODAC nebo klienta Oracle v plné velikosti
- Nestarejte se o opětovnou použitelnost konkrétní klientské instalace
- Potřebujete řešení kompatibilní s „clickOnce“
Našel jsem způsob, jak to udělat.
A. Stáhněte si "Oracle Instant Client 11.1.0.6 - Basic Lite".b. rozbalte do libovolné složky a zkopírujte následující soubory do kořenového adresáře projektu sady Visual Studio:
- oci.dll
- ociw32.dll
- orannzsbb11.dll
- oraocci11.dll
- oraociicus11.dll
-
msvcr71.dll (není nutné, měl by být dodáván s většinou verzí Windows)
(Prvních pět je minimum potřebné pro Oracle Instant Client, poslední je společný runtime Microsoft, který používají.)
C. Stáhněte si ODAC 11 XCopy (aktuální verze je 11.1.0.6) a rozbalte jej.
-
OraOps11w.dll – ve složce odp.net20 se nachází v kořenovém adresáři vašeho projektu.
(s tímto souborem mluví Oracle.DataAccess.dll a používá jej pro práci se soubory Instant Client).
d. Pro kompatibilitu s nasazením ClickOnce vyberte tyto soubory ve svém projektu a ujistěte se, že jsou ve vašem projektu „Obsah“ a „Kopírovat místní“. Manifest je pak správně nasadí.
Výsledek... . užitečné zatížení přidané do vašeho projektu je 30 MB, což je trochu na hovno, ale mnohem lepší než 100+ nebo 400+, podporuje západní postavy, ale nakopává to
- nevyžaduje žádnou cestu,
- nevyžaduje žádné položky registru,
- je při nasazení izolovaný a nezatěžuje ostatní instalace Oracle Client,
- funguje všechny DB zpět do verze 9.2.