IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

Utiliser des Assembly .Net dans Visual C++ 6.0


Sujet :

MFC

  1. #1
    Nouveau Candidat au Club
    Profil pro
    student
    Inscrit en
    Juin 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : student

    Informations forums :
    Inscription : Juin 2005
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Utiliser des Assembly .Net dans Visual C++ 6.0
    Bonjour le forum C++,

    Je cherche à utiliser des assemblies .Net dans du code VC++ 6.0.

    Les renseignement que j'ai trouvé par si par là mon poussé à procéder comme ceci :

    1) Assembly Codé en C# (avec SharpDevelop) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    using System;
    using System.Runtime.InteropServices;  
    namespace ManagedServer
    {
    	[ClassInterface(ClassInterfaceType.AutoDual)]  
     
    	public class CManagedServer  // public IManagedServer
    	{
    		public CManagedServer()
    		{}
    		public string SayHello(string r_strName) 
    		{
    			string str ;
    			str = "Hello " + r_strName ;
    			return str ; 
    		}
    	}
    }
    2) Je place l'assembly dans le projet C++ ainsi que dans le sous-répertoire \Debug


    3) Puis j'enregistre dans la base de registres l'assembly et génère un tlb grace à la commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    regasm /tlb:ManagedServer.tlb ManagedServer.dll

    4) Je code comme ceci en VC++ 6.0 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    #include "stdio.h"
    #import "ManagedServer.tlb"
     
    using namespace System;
    using namespace mscorlib;
    using namespace System::Runtime::InteropServicess;
    using namespace ManagedServer;
     
    int main(int argc, char* argv[])
    {
    	HRESULT hr = CoInitialize(NULL);
     
    	_CManagedServerPtr ptr(__uuidof(CManagedServer));
     
    	printf("%s\n", ptr->SayHello("World") );
     
    	CoUninitialize();
    	return 0;
    }

    ==> Erreur à la compilation du style :
    \debug\managedserver.tlh(62) : error C2501: '_TypePtr' : missing storage-class or type specifiers

    Il ne semble pas trouver les definition de _TypePtr dans les fichier .tlh et .tli qui sont des fichiers auto-généré par Visual C++.


    Je n'arrive pas résoudre ce problème. Quelqu'un aurait il une idée ?

    D'avance Merci
    Nitram


  2. #2
    Nouveau Candidat au Club
    Profil pro
    student
    Inscrit en
    Juin 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : student

    Informations forums :
    Inscription : Juin 2005
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    J'ai résolue le problème de compilation mettant le mot clé raw_interfaces_only après #import "ManagedServer.tlb"

    Par contre, à l'éxécution, CoInitialize(NULL) et __uuidof(CManagedServer) se passent bien mais ça plante à la première utilisation de méthode (ici à ptr->SayHello("World") )

    : Quelqu'un a t'il de l'expérience dans ce domaine ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/04/2011, 17h21
  2. comment utiliser des images enregistrées dans oracle dans mon application .Net
    Par dhay06 dans le forum Interfaces de programmation
    Réponses: 1
    Dernier message: 18/06/2010, 11h58
  3. Réponses: 4
    Dernier message: 03/10/2007, 12h59
  4. [D2005]Comment utiliser des assembly développées en delphi
    Par Valéry dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 16/08/2005, 18h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo