problem ze zmienną środowiskową path

0

Napisałem aplikacje w C++ Builder która korzysta z bibliotek DLL napisanych za pomocą matlaba.
Aplikacja do dzialania potrzebuję dodatkowo kilka bibliotek matlabowych.
Zrobiłem więc instalator który dodaje ścieżke do owych bibliotek do zmiennej środowiskowej path.
Wszystko działa ładnie do momentu gdy w systemie mamy już zainstalowanego matlaba(ale w starszej wersji).
Wtedy moja aplikacja szukając potrzebnych bibliotek znajduje te z zainstalowanego matlaba(bo są wczesniej w zmiennej path), a one są starszej wersji i mój program się wywala.

Czy jest jakiś sposób, aby moja aplikacja korzystała z bibliotek, w wskazanym katalogu, a nie pierwszych lepszych o tej samej nazwie?

Z góry dzięki za pomoc.

0

Ładuj DLL dynamicznie (przez LoadLibrary). Wtedy możesz podać ścieżkę.

0

Ta biblioteka jest ładowana dynamicznie, ale ona zaś jest zależna od innych(standardowych) bibliotek matlaba.
A te biblioteki niestety w różnych wersjach matlaba są ze sobą "niekompatybilne".

Rozwiązaniem jest kazać instalatorowi wpisać ścieżke do bibliotek na początek zmiennej środowiskowej "path", ale boje się że wtedy może być problem z matlabem, bo On będzie korzystał z tych nowych(moich) bilbiotek.

0

Proponuję zwrócić się z problemem do MathWorksa. Ale ich odpowiedzią będzie pewnie, że nie wspierają kilku instalacji Matlaba na jednym komputerze.

0

Witam

Można postawić pytanie również na forum użytkowników Matlaba :

http://www.matlab.pl

Rzecz w tym, że Matlab ma własny system ścieżek dostępu do funkcji i bibliotek, trochę podobny do
systemowego, ale nie pokrywający się z nim. Obsługuje go funkcja "matlabpath" Matlaba.

                                                                               Pozdrawiam

                                                                                        JK
0

Dzięki wielkie chłopaki, będę pytać mathworks'a może oni coś na to poradzą.

0

jeśli biblioteki w jakiś sposób zwracają wersje, to nie ma problemu. Zrob sobie preloader, który bedzie sprawdzał scieżki i odpalał program właściwy z odpowiednim środowiskiem (tzn bez scieżek w których znajdują sie starsze wersje bibliotek).</u>

1 użytkowników online, w tym zalogowanych: 0, gości: 1