TilePuzzle, exemple : illustre l'interopérabilité entre C# et C++
Mise à jour : novembre 2007
L'exemple TilePuzzle illustre plusieurs fonctionnalités importantes de Visual C++ :
L'exemple est constitué de composants implémentés avec plusieurs nouvelles technologies : C++, C# et les nouveaux attributs COM.
L'exemple illustre l'interopérabilité entre des composants managés (écrits avec C++ et C#) et les composants natifs (écrits avec C++ à l'aide d'attributs COM).
Il implémente un puzzle élémentaire appelé puzzle mosaïque. L'exemple charge une bitmap, la fractionne en un nombre quelconque de pavés (déterminé par l'utilisateur) qu'il disperse aléatoirement. L'utilisateur résout le puzzle en faisant glisser les pavés un à un jusqu'à ce que l'image d'origine soit reconstituée. En plus de ces fonctionnalités, l'exemple permet de résoudre le puzzle à l'aide d'algorithmes de recherche heuristiques écrits en C++ et les classes .NET Framework.
Note de sécurité : |
---|
Cet exemple de code est fourni pour illustrer un concept et ne doit pas être utilisé dans des applications ou des sites Web, car il peut ne pas illustrer les pratiques de programmation les plus sûres. Microsoft n'assume aucune responsabilité pour tout dommage indirect ou consécutif en cas d'utilisation de l'exemple de code à des fins autres que celles prévues. |
Pour obtenir des exemples et des instructions d'installation :
Dans le menu ? (Aide) de Visual Studio, cliquez sur Exemples.
Pour plus d'informations, consultez Recherche des fichiers d'exemple.
La liste la plus récente et la plus complète d'exemples est disponible en ligne à partir de la page Visual Studio 2008 Samples.
Des exemples sont également disponibles sur le disque dur de votre ordinateur. Des exemples et un fichier Readme sont copiés par défaut dans un dossier sous \Program Files\Visual Studio 9.0\Samples\. Pour les éditions Express de Visual Studio, tous les exemples sont accessibles en ligne.
Génération et exécution de l'exemple
Pour générer et exécuter TilePuzzle à l'aide de Visual Studio
Dans l'IDE de Visual Studio, chargez le fichier solution PUZZLE.sln.
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur la solution PUZZLE.
Dans le menu contextuel, cliquez sur Générer la solution.
Dans le menu Déboguer, cliquez sur Démarrer.
Une fois le projet généré avec succès, essayez de résoudre le puzzle par vous-même.
Architecture de l'exemple
Voici l'architecture de base :
Remarque : |
---|
Les fonctionnalités d'enregistrement et de chargement du jeu ne sont pas implémentées. |
Pour accéder au composant COM natif à partir des objets .NET Framework managés, l'exemple génère une DLL proxy .NET Framework à l'aide de TLBIMP.EXE.
Classes
Cet exemple illustre l'utilisation des classes suivantes :
System.Windows.Forms.Form : Implémente l'objet AboutForm qui se trouve dans le projet PUZZLE.
System.Object : Implémente l'objet GameLevelEnum qui se trouve dans le projet PUZZLE.
System.Delegate : Implémente l'objet SolveThreadProcDlg qui se trouve dans le projet PUZZLE.