web-dev-qa-db-fra.com

Comment utiliser Scinttilla .NET dans le projet C #?

Je tente d'utiliser SCINTLLA .NET dans un projet (je veux un bon éditeur + Syntaxe en surbrillance, etc.). Malheureusement, lorsque je fais référence aux fichiers binaires de mon projet, je n'arrive pas à utiliser les commandes de la scinttilla. Je reçois deux erreurs différentes.

  1. Le premier se produit lors de l'ajout de ScileXer.dll comme référence à mon projet. Je reçois un message qui dit: ne référence à scilexer.dll n'a pas pu être ajoutée. Assurez-vous que le fichier est accessible et qu'il s'agit d'un ensemble valide ou d'un composant COM.

  2. La deuxième erreur se produit lorsque j'essaie d'utiliser les commandes de scintillanet.dll. Si j'essaie de faire glisser le composant dans un formulaire, je reçois le message suivant: Échec de la création de la scintilla de composant. Le message d'erreur suit: System.componentModel.win32Exception:% 1 n'est pas une application Win32 valide sur scintillanet.scinttilla.get_creatparams ()

Toute aide avec l'un de ces problèmes serait très appréciée. Pour l'enregistrement, j'exécute Visual Studio 2008 sur une plate-forme Windows 7 64 bits.

Merci.

39
JasCav

Cela fait un peu depuis que j'ai utilisé Scinttilla, mais ma compréhension est que ScileXer.dll est une DLL entièrement natif, c'est pourquoi vous ne pouvez pas y ajouter de référence à partir de Visual Studio.

Au lieu de cela, vous devriez "organiser" pour scilexer.dll à apparaître dans le répertoire de droite au moment de l'exécution afin qu'il puisse être chargé par scintillanet.dll. Le moyen le plus sûr de ce faire serait d'ajouter ScileXer.dll à votre projet Visual Studio en tant que fichier ordinaire (pas comme référence), puis modifiez les propriétés du fichier pour l'avoir copiée dans le répertoire de sortie lorsque votre projet est construit.

Étant donné que vous êtes sur 64 bits, je m'attends à ce que vous auriez besoin de construire votre application spécifiquement comme 32 bits et non anycp . Comme je le disais, cela fait longtemps que je faisais cela, mais quand je l'ai fait, Scintilla n'avait que des fichiers binaires 32 bits.

26
Tim Robinson

J'utilise scintillanet (port C #). Il est facile à utiliser, mais c'est un porc de mémoire.

https://github.com/jacobslusser/scintillanet

1
Dan Gifford

enter image description here

Cliquez sur Exécuter et sélectionnez MyComputer avec le bouton droit de la souris sur MyComputer Aller à Propriétés, puis cliquez sur Paramètres système avancé.

Après cela, sélectionnez Avancé et cliquez sur Variables d'environnement.

Ici, nous pouvons ajouter la valeur et le chemin.

Valeur: Qu'est-ce que tu aimes "par exemple: Scinttilla

Chemin de valeur: où la DLL téléchargée a conservé. "Par exemple: D:\prathap\dll \

Tableau de téléchargement: https://scintillanet.codeplex.com/relases

Sélectionnez les téléchargements du côté droit à l'écran.

Ensuite, dans l'application, ajoutez la DLL scintillé comme une référence et une autre DLL 2 en tant que fichiers existants.

Faites un clic droit sur le projet Add - Addexisting Files - Sélectionnez ensuite les fichiers du système local et assurez-vous de conserver les 2 fichiers "Copier sur le répertoire de sortie = Copier toujours.

Puis exécutez l'application, cela fonctionnera.

0
Prathap Panabaka