Procédure pas à pas : Hello World : exemple COM Interop pour les appareils de type Smart Device
Mise à jour : novembre 2007
Cette procédure pas à pas associe dans une même solution un objet COM simple et une application managée.
![]() |
---|
Il est possible que votre ordinateur affiche des noms ou des emplacements différents pour certains des éléments d'interface utilisateur Visual Studio dans les instructions suivantes. L'édition de Visual Studio dont vous disposez et les paramètres que vous utilisez déterminent ces éléments. Pour plus d'informations, consultez Paramètres Visual Studio. |
Cette procédure pas à pas a été écrite à l'aide des Paramètres de développement Visual C++.
Création d'un objet COM
Pour créer un projet Smart Device ATL
Dans le menu Fichier, pointez sur Nouveau, cliquez sur Projet, développez le nœud Visual C++ dans le volet Types de projets, puis cliquez sur Smart Device.
Dans le volet Modèles, cliquez sur Projet Smart Device ATL.
Dans la zone Nom, tapez HelloCOMObject.
Dans la zone Nom de solution, tapez InteropSolution.
Cliquez sur OK pour lancer l'Assistant Projet Smart Device ATL.
Cliquez sur Terminer pour fermer l'Assistant.
Pour cette procédure pas à pas, vous n'avez pas besoin de modifier les paramètres par défaut dans l'Assistant.
Pour ajouter une classe
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet HelloCOMObject, pointez sur Ajouter, puis cliquez sur Classe pour ouvrir la boîte de dialogue Ajouter une classe.
Dans le volet Catégories, cliquez sur Smart Device.
Dans le volet Modèles, cliquez sur Objet simple ATL, puis sur Ajouter pour ouvrir l'Assistant Objet simple ATL.
Dans la zone Nom court, tapez Hello.
Dans le volet gauche, cliquez sur Options pour afficher la page Options.
Dans le groupe Modèle de thread, sélectionnez Libre, puis cliquez sur Terminer.
Pour ajouter une méthode à la classe
Ouvrez la fenêtre Affichage de classes à partir de l'onglet sur le bureau ou du menu Affichage.
Développez HelloCOMObject pour afficher l'interface IHello.
Cliquez avec le bouton droit sur IHello, pointez sur Ajouter, puis cliquez sur Ajouter une méthode pour ouvrir l'Assistant Ajout de méthode.
Dans la zone Nom de la méthode, tapez HelloWorld.
Dans la zone Type de paramètre, sélectionnez BSTR*.
Dans la zone Nom du paramètre, tapez texte.
Dans le groupe Attributs du paramètre, sélectionnez out.
Cliquez sur Ajouter.
La zone de méthode affiche [out] BSTR* text.
Cliquez sur Terminer pour fermer l'Assistant Ajout de méthode.
La méthode STDMETHOD(HelloWorld)(BSTR* text) est affichée dans le fichier Hello.h.
Pour ajouter l'implémentation à la méthode
Dans l'Explorateur de solutions, double-cliquez sur Hello.cpp pour ouvrir ce fichier dans l'éditeur de code.
Dans la section STDMETHODIMP, insérez le code d'implémentation suivant avant l'instruction return :
*text = SysAllocString(L"Hello World!");
Dans le menu Générer, cliquez sur Générer HelloCOMObject.
Un objet COM fait maintenant partie de la solution et la première partie de la procédure pas à pas est terminée.
Création d'un projet managé
Pour ajouter un projet managé à la solution
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur InteropSolution, pointez sur Ajouter, puis cliquez sur Nouveau projet.
Dans le volet Types de projets, développez Visual C#, cliquez sur Smart Device, cliquez sur Projet Smart Device dans le volet Modèles, tapez SayHello dans la zone Nom, puis cliquez sur OK.
Dans la boîte de dialogue Ajoutez un nouveau projet Smart Device, cliquez sur Application Smart Device, puis cliquez sur OK.
Le projet managé SayHello est créé dans le cadre de la solution et un formulaire Pocket PC Windows Mobile 5.0 apparaît dans la fenêtre du Concepteur.
Ajout de l'objet COM comme référence dans le projet managé
Pour ajouter l'objet COM comme référence dans le projet managé
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet SayHello, puis cliquez sur Ajouter une référence.
Dans la boîte de dialogue Ajouter une référence, cliquez sur Parcourir.
Le dossier SayHello est affiché dans la zone Regarder dans.
Naviguez jusqu'au dossier parent (dans cette procédure pas à pas, InteropSolution).
Dans la fenêtre qui affiche le contenu du dossier, double-cliquez sur HelloCOMObject, sur Windows Mobile 5.0 Pocket PC SDK (ARMV4), sur Déboguer, puis cliquez sur HelloCOMObject.dll.
Cliquez sur OK pour fermer la boîte de dialogue Ajouter une référence.
Remarque :
Vous devez vous connecter en tant qu'Administrateur. Sous Windows Vista, sélectionnez Exécuter en tant qu'administrateur lorsque vous démarrez Visual Studio.
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur Form1.cs, puis cliquez sur Afficher le code.
Dans la région Using directives en haut du fichier, ajoutez le code suivant :
using HelloCOMObjectLib;
Ajout de la gestion des événements au projet managé
Pour ajouter la gestion des événements au projet managé et le générer
Ouvrez le Concepteur Form1.
À partir de la Boîte à outils, faites glisser un Bouton dans le formulaire.
Double-cliquez sur le bouton pour ouvrir l'éditeur de code au niveau de l'événement Click.
Insérez le code de gestion des événements suivant pour le bouton :
string text; HelloClass h = new HelloClass(); h.HelloWorld(out text); MessageBox.Show(text);
Dans le menu Générer, cliquez sur Générer SayHello.
Derniers réglages apportés à la solution
Pour configurer la solution pour le déploiement
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet SayHello, puis cliquez sur Définir comme projet de démarrage.
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur la solution InteropSolution, puis cliquez sur Dépendances du projet.
Dans la boîte de dialogue Dépendances du projet, sélectionnez SayHello dans la zone déroulante Projets, puis dans la zone Dépend de, sélectionnez HelloCOMObject.
Cliquez sur OK.
La solution est prête pour le déploiement.
Déploiement de la solution mixte
Pour déployer la solution
Dans le menu Déboguer, cliquez sur Exécuter sans débogage.
Dans la boîte de dialogue Déployer, sélectionnez Windows Mobile 5.0 Pocket PC - émulateur, puis cliquez sur Déployer.
Enregistrez cette solution pour l'utiliser dans la Procédure pas à pas : débogage d'une solution qui inclut du code managé et du code natif.
Voir aussi
Concepts
Interopérabilité COM pour les périphériques
Référence
Visual Basic et Visual C# (Comment faire dans les projets Smart Device)