Pobrałem najnowszy Notepad ++ z oficjalnej strony, a następnie wypróbowałem różne libxml.dll
pliki, aby wtyczka XML Tools działała. Ostatni, który próbowałem, był stąd (powinien być oficjalnym przedstawicielem):
Kiedy rozpakowuję bibliotekę DLL z powyższego archiwum 7z (x64) i uruchamiam instancję Notepad ++, pojawia się ten błąd:
Wszelkie pomysły, jak rozwiązać ten problem?
Jestem otwarty na sugestie dotyczące obniżenia wersji Notepad ++, po prostu muszę wiedzieć, która wersja.
SciLexer.dll
. Upewnij się, że w katalogu wtyczek nie ma bibliotek DLL iconv, libxml2, libxslt ani zlib1, ponieważ Notepad ++ spróbuje dynamicznie załadować je jako wtyczki. Ale te cztery biblioteki DLL nie są wtyczkami Notepad ++ ; są Zależności tejXMLTools.dll
wtyczki. Z tego powodu pojawi się błąd dotyczący „ANSI”.Odpowiedzi:
Kiedy wchodzisz w tego rodzaju scenariusz, prawdopodobnie źle wykonałeś instalację wymaganych zależności. Czego szukać:
Jeśli Notepad ++ jest 32-bitowy plik wykonywalny, to nie musi mieć 64-bitowych bibliotek DLL (lub odwrotnie). Bitowość bibliotek DLL i bitowość
notepad++.exe
muszą być zgodne (32-bit na 32-bit lub 64-bit na 64-bit).Upewnij się, że nie
XMLTools.dll
siedzisz w katalogu podstawowym, w którymnotepad++.exe
mieszka.Upewnij się, że
XMLTools.dll
wplugins
katalogu nie ma żadnej z czterech zależności !plugins
Katalog jest tylko za rzeczywistą Notepad ++ wtyczek ; wszelkie inne biblioteki DLL znajdujące się wplugins
katalogu będą dynamicznie ładowane przez Notepad ++ i będą próbowały zostać aktywowane jako wtyczki . Ale ponieważlibxml2
,iconv
itp są nie rzeczywiste wtyczek , ale raczej do zależnościXMLTools
, obciążenie dynamiczne zakończy się niepowodzeniem, ponieważ te pliki DLL nie mają Notepad ++ wtyczki haczyki. Spowoduje to dziwne błędy dotyczące „ANSI” i innych rzeczy.Jeśli nie masz zainstalowanych żadnych innych wtyczek, które wymagają natywnych zależności, możesz bezpiecznie usunąć dowolny plik DLL w tym samym katalogu co
notepad++.exe
, z wyjątkiemSciLexer.dll
. SciLexer jest podstawowym składnikiem Notepad ++ i należy go zachować.Jeśli jeszcze tego nie zrobiłeś, zajrzyj do środka
\path_to_your_notepad++_installation\notepad++\plugins\ext_libs
Skopiuj te biblioteki DLL do tego samego katalogu, co notatnik ++. Exe:
źródło
Wynika to z niezgodności wersji (x86 vs x64) między notepad ++ a plikiem xmltools.dll. Problem został rozwiązany przez usunięcie dll i zależności w wersji x86 oraz pobranie następującej wersji tego samego narzędzia x64. https://sourceforge.net/projects/npp-plugins/files/XML%20Tools/Xml%20Tools%202.4.9%20Unicode/
źródło