Je veux passe à C#, Windows Forms et Control Forms.
Mais je veux pouvoir réutiliser mon existant MFC. La question est comment ?
S'il s'agit d'un ActiveX, Pas de problème je sais faire.
Mais pour des classes dérivées de MFC? Comment réouvrir tous les fichiers
qui ont été sérialisés dans une architecture Document/Vue? Comment
reconnecter dans un Windows Forms des classes qui ont été faites en
utilisant MFC?
Merci pour tous tuyaux, liens, réponses, trucs, tutoriaux, .....
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric Vernié [MS]
Bonjour Lionel,
Pour ce genre de chose, ce que je te propose c'est de créer un petit Wrapper en C++ .NET qui te permettra de faire le pont avec C#.
En effet, il existe plusieurs manière de faire le pont entre le monde .NET et le monde Natif. COM Interop (ActiveX COM), P/Invoke (API Win32) et It just Work (IJW). C'est ce dernier que tu pourrais utiliser sans trop d'effort Je m'explique : Le C++ est le seul langage, qui permet de mixer du source Natif et du source .NET. En un mot dans un seul source tu as les deux mondes. (Logiquement, plus performant que COM Interop, voir P/Invoke). Comment cela ce met en place.
Il existe un pragma qui permet d'indiquer au compilateur dans quel mode il est. pragma managed et pragma unmanaged (va faire un tour de ce coté la) D'autre part, pour echanger des donnees d'un monde à l'autre (par exemple des structures des chaines ansi, des tableaux, et ceci quelque soit le langage) tu peut utiliser la classe System.Runtime.InteropServices.Marshal Tu y trouveras des methodes Static utiles pour faire tout un tas de choses en .NET dans le monde Natif. ('Allouer de la mémoire, convertir une chaine .NET (String) en une chaine COM (BSTR) etc. etc...
A+
Eric Vernié Microsoft France
"lionel letoffet" a écrit dans le message de news: 41809465$0$15756$
Bonjour,
depuis des années je travail avec MFC.
Je veux passe à C#, Windows Forms et Control Forms.
Mais je veux pouvoir réutiliser mon existant MFC. La question est comment ?
S'il s'agit d'un ActiveX, Pas de problème je sais faire.
Mais pour des classes dérivées de MFC? Comment réouvrir tous les fichiers qui ont été sérialisés dans une architecture Document/Vue? Comment reconnecter dans un Windows Forms des classes qui ont été faites en utilisant MFC?
Merci pour tous tuyaux, liens, réponses, trucs, tutoriaux, .....
Bonjour Lionel,
Pour ce genre de chose, ce que je te propose c'est de créer un petit Wrapper
en C++ .NET qui te permettra de faire le pont avec C#.
En effet, il existe plusieurs manière de faire le pont entre le monde .NET
et le monde Natif. COM Interop (ActiveX COM), P/Invoke (API Win32) et It
just Work (IJW). C'est ce dernier que tu pourrais utiliser sans trop
d'effort
Je m'explique :
Le C++ est le seul langage, qui permet de mixer du source Natif et du source
.NET. En un mot dans un seul source tu as les deux mondes. (Logiquement,
plus performant que COM Interop, voir P/Invoke).
Comment cela ce met en place.
Il existe un pragma qui permet d'indiquer au compilateur dans quel mode il
est.
pragma managed et pragma unmanaged (va faire un tour de ce coté la)
D'autre part, pour echanger des donnees d'un monde à l'autre (par exemple
des structures des chaines ansi, des tableaux, et ceci quelque soit le
langage) tu peut utiliser la classe System.Runtime.InteropServices.Marshal
Tu y trouveras des methodes Static utiles pour faire tout un tas de choses
en .NET dans le monde Natif. ('Allouer de la mémoire, convertir une chaine
.NET (String) en une chaine COM (BSTR) etc. etc...
A+
Eric Vernié
Microsoft France
"lionel letoffet" <letoffet@club-internet.fr> a écrit dans le message de
news: 41809465$0$15756$7a628cd7@news.club-internet.fr...
Bonjour,
depuis des années je travail avec MFC.
Je veux passe à C#, Windows Forms et Control Forms.
Mais je veux pouvoir réutiliser mon existant MFC. La question est comment
?
S'il s'agit d'un ActiveX, Pas de problème je sais faire.
Mais pour des classes dérivées de MFC? Comment réouvrir tous les fichiers
qui ont été sérialisés dans une architecture Document/Vue? Comment
reconnecter dans un Windows Forms des classes qui ont été faites en
utilisant MFC?
Merci pour tous tuyaux, liens, réponses, trucs, tutoriaux, .....
Pour ce genre de chose, ce que je te propose c'est de créer un petit Wrapper en C++ .NET qui te permettra de faire le pont avec C#.
En effet, il existe plusieurs manière de faire le pont entre le monde .NET et le monde Natif. COM Interop (ActiveX COM), P/Invoke (API Win32) et It just Work (IJW). C'est ce dernier que tu pourrais utiliser sans trop d'effort Je m'explique : Le C++ est le seul langage, qui permet de mixer du source Natif et du source .NET. En un mot dans un seul source tu as les deux mondes. (Logiquement, plus performant que COM Interop, voir P/Invoke). Comment cela ce met en place.
Il existe un pragma qui permet d'indiquer au compilateur dans quel mode il est. pragma managed et pragma unmanaged (va faire un tour de ce coté la) D'autre part, pour echanger des donnees d'un monde à l'autre (par exemple des structures des chaines ansi, des tableaux, et ceci quelque soit le langage) tu peut utiliser la classe System.Runtime.InteropServices.Marshal Tu y trouveras des methodes Static utiles pour faire tout un tas de choses en .NET dans le monde Natif. ('Allouer de la mémoire, convertir une chaine .NET (String) en une chaine COM (BSTR) etc. etc...
A+
Eric Vernié Microsoft France
"lionel letoffet" a écrit dans le message de news: 41809465$0$15756$
Bonjour,
depuis des années je travail avec MFC.
Je veux passe à C#, Windows Forms et Control Forms.
Mais je veux pouvoir réutiliser mon existant MFC. La question est comment ?
S'il s'agit d'un ActiveX, Pas de problème je sais faire.
Mais pour des classes dérivées de MFC? Comment réouvrir tous les fichiers qui ont été sérialisés dans une architecture Document/Vue? Comment reconnecter dans un Windows Forms des classes qui ont été faites en utilisant MFC?
Merci pour tous tuyaux, liens, réponses, trucs, tutoriaux, .....