2010-08-29 10 views
2

J'utilise Visual Studio 2010 Express pour C# et je n'arrive pas à installer le pack de code. J'ai téléchargé la source à partir de MSDN et je ne sais pas quoi faire avec elle? J'ai ouvert la WindowsAPICodePack.sln et a tenté de construire le projet et a obtenu:C# Windows API Code Pack

Erreur 16 n'a pas pu être trouvé le nom de type ou espace de noms « ContentPropertyAttribute » (vous manque une directive à l'aide ou une référence d'assemblage?) C : \ Users \ Joe \ Téléchargements \ WindowsAPICodePack \ Shell \ CommonFileDialogs \ CommonFileDialogRadioButtonList.cs 13 6 Shell

et

erreur 13 n'a pas pu être trouvé 'IComponentConnector' le nom de type dans l'espace de noms « système .Windows.Markup '. Ce type a été transmis à l'assembly 'System.Xaml, version = 4.0.0.0, Culture = neutre, PublicKeyToken = b77a5c561934e089' Envisagez d'ajouter une référence à cet assembly. C: \ Utilisateurs \ Joe \ Téléchargements \ WindowsAPICodePack \ Shell \ obj \ Debug \ Contrôles \ CommandLinkWPF.g.cs 42 99 Shell

chacun environ 5-6 fois chacun.

J'ai essayé de construire les échantillons aussi mais nous avons eu des erreurs similaires.

Comment installer le code dans Visual Studio?

Comment réparer les erreurs?

Comment inclure le code dans mes projets?

Puis-je faire de la Bibliothèque utilisable dans mes projets avec juste une commande « en utilisant »?

+0

Je viens de télécharger ceci et je l'ai compilé sans erreurs dans VS 2008. Avez-vous eu des erreurs/avertissements lors de l'ouverture du projet dans VS 2010? Il semble qu'il pourrait y avoir des problèmes avec le processus de conversion. – ChrisF

+0

C'était une belle question – IremadzeArchil19910311

Répondre

6

Je viens de version téléchargée 1.0.1, l'a ouvert dans Visual Studio 2010 Professional et construit avec aucun problème.

Vérifiez la version de .NET que vos projets ciblent actuellement. Il est possible que l'édition Express "mette à jour" automatiquement les projets pour cibler .NET 4, alors que les miens ont été laissés pour cible .NET 3.5.

Autre chose à vérifier: avez-vous installé .NET 3.5? Je m'y attendais, mais ça vaut le coup de vérifier.

Lorsque vous avez construit les projets, vous devez faire deux choses pour les utiliser:

  • Ajouter une référence à l'ensemble construit (par exemple Microsoft.WindowsAPICodePack.dll)
  • Ajouter une directive using à l'espace de noms approprié. (Ceci est en fait facultatif, mais sinon vous devrez utiliser le nom complet pour tout type dans la bibliothèque, ce qui n'est généralement pas ce que vous voulez.)
+0

Où est-ce que le bon Microsoft.WindowsAPICodePack.dll va? Je regardais la documentation et je me suis rendu compte que je n'avais pas tous les espaces de noms nécessaires. J'ai regardé dans mon dossier de projet et ai 3-4 différent Microsoft.WindowsAPICodePack.dll dans différents sous-dossiers du dossier de WindowsAPICodePack – Akinos

+0

@Nat: Ils devraient être identiques - fondamentalement certains des projets le référence eux-mêmes, ainsi ils auront leurs propres copies. Pour "l'original", regardez sous Core/bin/debug (ou Core/bin/release) –

10

Ajouter une référence à System.Xaml.dll à votre projet.

+0

Cela fonctionne parfaitement! Comment puis-je inclure le code de l'API dans un de mes projets? Utilisez simplement la même référence Xmal? – Akinos

+0

Le deuxième message d'erreur suggère que le type 'ComponentConnector' et le type' ContentPropertyAttribute' résident maintenant dans l'espace de noms 'System.Xaml' qui se trouve dans le nouveau' System.Xaml.dll' fourni avec le pack de code. –

+0

Alors oui, une fois le pack de code installé, vous pouvez simplement ajouter la nouvelle référence à vos propres projets. –