Diskuze: DLL z C++ do C#
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 17 zpráv z 17.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
a to dll je kde? Ve slozce vedle exace nebo nekde ve win v system32?
dll je vedle exače, na obou počítačích úplně stejně
a v kterych slozkach je to na obou pc nainstalovane?
není ta dll závislá na další dll?
pokud ta další dll na jednom počítači je přítomná/dohledatelná a na druhém ne...
btw tady se nekdo zmiňuje, že tu zavislost dll řešil pomocí DependencyWalkeru
Udělala jsem nové dll z té původní, abych si zjednodušila některé funkce a obě knihovny jsou u exače. Knihovnu použiji v dalších projektech. Počítače mám spojené přes dropbox, proto je prostředí naprosto shodné.
Teď mě ještě napadlo, na počítači, kde to funguje to mám na D (tam mám C a D). Na počítači, kde to nefunguje mám pouze C a tak na C. Může v tom být problém?
zkusil bych to jen cvicne dat tam kde to nefunguje primo do nejake slozky na C, pomuze to nejak?
Ta knihovna se jmenuje VCLNTB.DLL?
Může v tom být problém?
Nemělo by. Když se načítá EXE/DLL do paměti, prohledávají se cca následující místa:
Obvykle jsou DLL v systémových adresářích nebo v adresáři z aplikací. Obskurnější umístění se moc nevyskytují.
Jen z té chybové zprávy není jasné, jestli je problém přímo v DLL, nebo v tom, že EXE soubor aplikace prostě nějakou knihovnu.nenajde.
Ano, knihovna se jmenuje VCLNTB.DLL, na počítači, kde to nefunguje mám na C adresář pro zkoušený program. Původně jsem to zkoušela přímo na dropboxu. Předpokládám, že v knihovně problém není, protože na druhém počítači problém nemám a pokud použiji program v c++ borland problém nemám nikde.
pokud použiji program v c++ borland problém nemám nikde.
Jakože pokud program spustíš v rámci prostředí Borland C++ (nebo to je C++ Builder...), tak se spustí na obou PC bez problémů? To mi přijde, že ta knihovna klidně může mít nějakou závislost, kterou to nenajde normálně, protože prostředí Borlandu nastaví nějaké proměnné prostředí. U C++/Delphi bývala trochu problém závislost na borlmn.dll, ale nevím, jak se to projevuje u .NET kódu.
Mohla bys někam tu knihovnu (případně i EXE) nahrát, abychom se mohli podívat?
pokud ta knihovna není kompilovaná s vypnutým nastavením "Link with
dynamic RTL" a "Link with runtime packages"
musíš do adresáře přidat: BORLNDMM.dll a myslím cc3270.dll
(cc####.dll)
Všem moc děkuji, je to vyřešeno. Musím tam dodat ještě borlndmm.dll, cc3260mt.dll, cc3260mt.dll a je to OK
Ještě oprava chyběla rtl60.bpl. Na počítači, kde není problém mám nainstalovaný borland. Asi jsou příslušné knihovny nalezeny v adresáři borlandu. Nevím.
Zobrazeno 17 zpráv z 17.