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

Jak naprawić plik DLL

VPS Starter Arubacloud
0 głosów
652 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 (251,210 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 (251,210 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 (251,210 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,468 wizyt
pytanie zadane 10 kwietnia 2020 w C i C++ przez koduj123 Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 5,976 wizyt
pytanie zadane 18 października 2017 w C i C++ przez Michulec7 Nowicjusz (170 p.)
0 głosów
1 odpowiedź 265 wizyt
pytanie zadane 1 września 2016 w C i C++ przez pewien_programista Obywatel (1,070 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...