Faire fonctionner le plugin XML Tools avec Notepad ++


9

J'ai téléchargé le dernier Notepad ++ sur le site officiel, puis j'ai essayé différents libxml.dllfichiers pour faire fonctionner le plugin XML Tools. Le dernier que j'ai essayé venait d'ici (devrait être un représentant officiel):

Ainsi, lorsque je décompresse une DLL de l'archive 7z ci-dessus (x64) et démarre une instance de Notepad ++, j'obtiens cette erreur:

entrez la description de l'image ici

Des idées sur la façon de résoudre ce problème?

Je suis ouvert aux suggestions sur la rétrogradation de mon Notepad ++, j'ai juste besoin de savoir quelle version.


Avez-vous essayé d'installer à partir du Plugin Manager?
Heavyd

Utilisez-vous une version 64 bits de Notepad ++? Sinon, pourquoi téléchargez-vous une version 64 bits de libxml? BTW, la version de libxml requise pour XML Tools est fournie dans le téléchargement pour XML Tools , tout ce que vous avez à faire est de la déplacer vers le répertoire où réside notepad ++.
allquixotic

@heavyd: Je ne l'ai pas trouvé dans la liste des plugins du Plugin Manager.
Neolisk

@allquixotic: Vous avez peut-être raison à ce sujet. Mon Bloc-notes ++ est 32 bits, juste parce que mon Windows est x64, j'ai besoin de x64. Extraire les fichiers inclus avec XML Tools est la première chose que j'ai essayée. Cela a dit que les plugins ANSI n'étaient pas compatibles avec mon bloc-notes Unicode ++. Je ne suis pas sûr de ce que cela veut dire. Je n'ai trouvé aucune autre version de Notepad ++ sur le site officiel.
Neolisk

1
Essayez ceci: dans le répertoire Notepad ++ de base, supprimez tous les fichiers .DLL à l'exception de SciLexer.dll. Dans le répertoire des plugins, assurez-vous que vous n'avez pas de DLL iconv, libxml2, libxslt ou zlib1, car Notepad ++ essaiera de les charger dynamiquement en tant que plugins. Mais ces quatre DLL ne sont pas des plugins Notepad ++ ; ce sont des dépendances du XMLTools.dllplugin. Vous obtiendrez donc une erreur sur "ANSI".
allquixotic

Réponses:


9

Lorsque vous entrez dans ce type de scénario, vous avez probablement mal fait l'installation des dépendances requises. Choses à rechercher:

  1. Si votre Bloc-notes ++ est un exécutable 32 bits, vous ne devez pas avoir de DLL 64 bits (ou vice versa). Le bitness des DLL et le bitness de notepad++.exedoivent correspondre (32 bits à 32 bits ou 64 bits à 64 bits).

  2. Assurez-vous que vous n'avez pas XMLTools.dllassis dans le répertoire de base où notepad++.exevit.

  3. Assurez-vous que vous n'avez aucune des quatre XMLTools.dlldépendances dans le pluginsrépertoire! Le pluginsrépertoire est uniquement pour les plugins Notepad ++ réels ; toute autre DLL se trouvant dans le pluginsrépertoire sera chargée dynamiquement par Notepad ++ et tentera d'être activée en tant que plugins . Mais, comme libxml2, iconvetc. ne sont pas de véritables plugins , mais plutôt des dépendances pour XMLTools, la charge dynamique échouera, car ces DLL n'ont pas les hooks de plugin Notepad ++. Cela provoquera des erreurs étranges sur "ANSI" et d'autres choses.

  4. Si vous n'avez aucun autre plugin installé qui nécessite des dépendances natives, vous pouvez supprimer en toute sécurité tout fichier DLL dans le même répertoire que le notepad++.exe, à l' exception deSciLexer.dll . SciLexer est un composant central de Notepad ++ et doit être conservé.

  5. Si vous ne l'avez pas encore fait, regardez dans \path_to_your_notepad++_installation\notepad++\plugins\ext_libs

Copiez ces DLL dans le même répertoire que notepad ++. Exe:

iconv.dll
libxml2.dll
libxslt.dll
zlib1.dll

+1. Très bien écrit. J'aimerais pouvoir vous en donner + plus d'un pour cela. Merci encore. :)
Neolisk

Le lien vers le programme d'installation à partir du site Notepad ++ vous renvoie vers une ancienne version des outils Xml. Vous pouvez obtenir les versions les plus à jour et vous assurer d'obtenir x64 ou x86 à partir d'ici: sourceforge.net/projects/npp-plugins/files/XML%20Tools
HaveSpacesuit

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.