Automatyczne dodawanie potrzebnych dll

0

Witam, mam pewien problem. Mianowicie piszę projekt w visual c++. Korzystam z wielu sdk ale nie wykorzystuje wszystkich plików dll dostępnych w konkretnym sdk. Jak zrobić aby w visual c++ bo zbudowaniu projektu on automatycznie kopiował wszystkie potrzebne pliki dll tak że mogę Od razu spakować folder releas i Od razu go komuś wysłać i tam na pewno się uruchomi mój program?

0

Visual C++ nie potrafi "kopiować plików DLL", sam ręcznie musisz umieścić je w folderze z twoim EXE'kiem.
Dodatkowo wkompiluj runtime C++ do EXE'ca bo nie każdy będzie go miał na swoim komputerze: opcje projektu -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library i wybierasz opcje bez DLL

0

Ok rozumiem. A powiedzmy jeżeli korzystam z pewnego SDK. I załączam jeden plik dll który wykorzystuje to skąd mam wiedzieć od których innych dll jest on zależny. Tzn co mam skopiować? Można jakoś sprawdzić, z których dokładnie plików korzysta program?

0
Sari napisał(a):

Ok rozumiem. A powiedzmy jeżeli korzystam z pewnego SDK. I załączam jeden plik dll który wykorzystuje to skąd mam wiedzieć od których innych dll jest on zależny. Tzn co mam skopiować? Można jakoś sprawdzić, z których dokładnie plików korzysta program?

Niby można, można to odczytać z nagłówka EXE, są programy do tego, np. EXE viewer (czy jakoś tak).
Po prostu wrzuć DLLki tego SDK do folderu z EXEkiem i już. Najwyżej będą jakieś nie używane DLLki w katalogu.
A jak tak bardzo chcesz testować, to po prostu usuwaj na chwilę z katalogu DLL i sprawdź czy EXE działa.

0

Zazwyczaj podglądam plik EXE pod Total Commanderem (klawisz F3) i szukam (klawisz F7) tekstu .dll. Większość znalezionych wystąpień oznacza nazwę potrzebnej dll-ki. ;-)

0

Możesz użyć popularnego programu "Dependency Walker".

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