• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak naprawić plik DLL

Object Storage Arubacloud
0 głosów
721 wizyt
pytanie zadane 23 czerwca 2020 w C i C++ przez Damian Bilik Nowicjusz (140 p.)

Właśnie zacząłem naukę C++ na CodeBlocks w waszym poradniku. Utworzyłem nowy projekt, który na konsoli wyświetla tekst "Hello world!". Gdy otworzę projekt poprzez CodeBlock, wszystko działa jak trzeba, lecz gdy otworzę go przez plik EXE, wyświetla komunikat:

Nie można uruchomić programu, ponieważ na komputerze nie znaleziono "libstdc++-6.dll". Spróbuj ponownie zainstalować program, aby naprawić ten problem.

 w folderze w którym znajduje się plik EXE programu znajduje się plik DLL

 

komentarz 24 czerwca 2020 przez VBService Ekspert (253,420 p.)
edycja 24 czerwca 2020 przez VBService

Skompiluj ten kod i podaj co pokazał:

#include <iostream>
using std::cout;
 
int main(){
    cout<<__GNUC__<<"."<<__GNUC_MINOR__<<"."<<__GNUC_PATCHLEVEL__;
}
np.: Windows 10

C:\Windows\System32> mshtml.dll 32bit

C:\Windows\SysWOW64> mshtml.dll 64bit

komentarz 24 czerwca 2020 przez j23 Mędrzec (194,920 p.)

@Damian Bilik, dodaj katalog <mingw>\bin do zmiennej środowiskowej PATH.

komentarz 24 czerwca 2020 przez Damian Bilik Nowicjusz (140 p.)

@VBService, Nie rozumiem

komentarz 24 czerwca 2020 przez VBService Ekspert (253,420 p.)

Tamte pliki mshta* to tylko przykładowe pliki choć na obrazku widać, że różnią się czasem wielkością i są można powiedzieć zdublowane w dwóch różnych katalogach. To dlatego, że Windows 10 64bit, jeżeli chcesz używać jakieś dll'ki musisz (powinieneś) ją mieć w wersji 32bity w folderze Windows\System32 i 64bity w folderze Windows\SysWOW64 (Najczęściej obydwie wersje są dostępne).

P.S. Czy ktoś wie, do czego używa się (można użyć) aplikacji (hosta) mshta.exe wink

komentarz 24 czerwca 2020 przez j23 Mędrzec (194,920 p.)

jeżeli chcesz używać jakieś dll'ki musisz (powinieneś) ją mieć w wersji 32bity w folderze Windows\System32 i 64bity w folderze Windows\SysWOW64

Odwrotnie. W SysWOW64 jest cały podsystem 32-bitowy.

Kopiowanie niesystemowych bibliotek do wspomnianych katalogów to zła praktyka. Po to jest zmienna PATH, by nie trzeba było mieszać w katalogach systemowych.

komentarz 24 czerwca 2020 przez VBService Ekspert (253,420 p.)

@j23 nie zgodze się z Tobą, miałem sam taki przypadek z bibliotekami 32bit i 64bit. Dopiero umieszczenie ich w w.w folderach pozwoliło na prawidłową pracę skryptów. Czasem jest tak, że nie można dodać nic do zmiennej PATH (nie będę wchodził w szczegóły). Po to są katalogi jak się wie co się robi. wink

komentarz 24 czerwca 2020 przez j23 Mędrzec (194,920 p.)

Nie wiem, o jakich skryptach piszesz. Dobrze napisana aplikacja nie musi umieszczać swoich bibliotek w katalogach systemowych (no chyba że sama jest systemowa).

Takie mieszanie w systemowych plikach było nierzadko praktykowane w czasach Win9x, co oczywiście skutkowało puchnięciem systemu i jego postępującą destabilizacją.

Czasem jest tak, że nie można dodać nic do zmiennej PATH

Dlaczego?

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 2,501 wizyt
pytanie zadane 10 kwietnia 2020 w C i C++ przez koduj123 Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 6,090 wizyt
pytanie zadane 18 października 2017 w C i C++ przez Michulec7 Nowicjusz (170 p.)
0 głosów
1 odpowiedź 270 wizyt
pytanie zadane 1 września 2016 w C i C++ przez pewien_programista Obywatel (1,070 p.)

92,579 zapytań

141,432 odpowiedzi

319,663 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...