Přidání reference za běhu ?   zodpovězená otázka

Reflexe, .NET

Chtěl bych se zeptat jestli někdo nemá zkušenost jak řešit problematiku různých verzí office na stanicích uživatelů ?

Např. mnou vytvořená aplikace psaná v VB.net 2010 express má referenci na Microsoft Access 11.0 object library což odpovídá verzi office 2003. Jenže pokud má někdo jinou verzi office tak aplikace logicky zhavaruje. Můj dotaz tedy zní, dá se nějak přidat refence za běhu programu po vyhodnocení verze office ?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

S tímto nemám problém, pokud udělám aplikaci která si referencuje knihovnu z office 2003 a uživatel má nainstalované Office 2007 nebo 2010 funguje mu to taky.

Jen nesmí mít samozřejmě nainstalovanou starší verzi.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Podle mě je nejlepší použít nejnižší verzi která je dostupná a spolehat se na to že ji uživatel bude mít (pokud by byla např. ke stažení tak napsat že je povinná například veze Officu 2003 a výše)

nahlásit spamnahlásit spam 0 / 2 odpovědětodpovědět

Přidávat do aplikace reference za běhu není nic jednoduchého a vyžaduje to Reflection. Řešení je buď to co napsal p. Dědek, nebo nepracovat s rozhraním pomocí automaticky vytvořené interop knihovny na COM rozhraní, ale pomocí CreateObject a late bindingu. Takový přístup nevyžaduje přidávat žádné reference.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback