OVH Cloud OVH Cloud

Inserer dans une application Win32 un controle utilisateur DOTNET

5 réponses
Avatar
Yamagazahe
Bonjour,

Peux-t-on utiliser des contrôles utilisateur (usercontrol) dotnet dans une
application win32?
si oui, comment?

Merci d'avance

Yamagazahe

5 réponses

Avatar
Sébastien FERRAND
Yamagazahe a émis l'idée suivante :
Bonjour,

Peux-t-on utiliser des contrôles utilisateur (usercontrol) dotnet dans une
application win32?
si oui, comment?

Merci d'avance

Yamagazahe



oui... a condition que ton control .net soit exposer comme composant
COM.

Sébastien

--
---
Sébastien FERRAND
Microsoft Visual C# MVP
blog : http://blogs.developpeur.org/sebmafate
Avatar
Yamagazahe
Je suis bien d'accord, mais comment, car pour l'instant je n'ai pu exposer
mon composant que comme objet com, de ce fait je ne peux pas héberger dans un
containeur win32 car je n'ai pas son handle(je ne peux pas lui assigner de
parent).

Merci pour votre réponse

"Sébastien FERRAND" wrote:

Yamagazahe a émis l'idée suivante :
> Bonjour,
>
> Peux-t-on utiliser des contrôles utilisateur (usercontrol) dotnet dans une
> application win32?
> si oui, comment?
>
> Merci d'avance
>
> Yamagazahe

oui... a condition que ton control .net soit exposer comme composant
COM.

Sébastien

--
---
Sébastien FERRAND
Microsoft Visual C# MVP
blog : http://blogs.developpeur.org/sebmafate





Avatar
Paul Bacelar
Quel est votre besoin ?

Il est assez simple d'intégrer des composants graphiques .NET dans une
application MFC en C++ CLI.

Pourquoi Win32 ?
--
Paul Bacelar
MVP VC++


"Yamagazahe" wrote in message
news:
Je suis bien d'accord, mais comment, car pour l'instant je n'ai pu exposer
mon composant que comme objet com, de ce fait je ne peux pas héberger dans
un
containeur win32 car je n'ai pas son handle(je ne peux pas lui assigner de
parent).

Merci pour votre réponse

"Sébastien FERRAND" wrote:

Yamagazahe a émis l'idée suivante :
> Bonjour,
>
> Peux-t-on utiliser des contrôles utilisateur (usercontrol) dotnet dans
> une
> application win32?
> si oui, comment?
>
> Merci d'avance
>
> Yamagazahe

oui... a condition que ton control .net soit exposer comme composant
COM.

Sébastien

--
---
Sébastien FERRAND
Microsoft Visual C# MVP
blog : http://blogs.developpeur.org/sebmafate







Avatar
Nico
Il est possible d'intégrer un control utilisateur en utilisant les API win32.
Il faut que ton projet principal soit en .Net et lance ton appli win32. A
partir de là, tu récupères le handle de ton appli win32 avec la méthode
[DllImport("user32.dll")]
public static extern IntPtr FindWindow(string lpClassName, string
lpWindowName);

Puis tu définis cette fenêtre comme le parent de ton usercontrol avec la
méthode
[DllImport("user32.dll")]
public static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

Ce qui donne le code suivant :
IntPtr hIHMWin32 = User32.FindWindow(null, "titre de ta fenêtre);
SetParent(Usercontrol.Handle,hIHMWin32);

En espérant que cela puisse t'aider.
Nicolas
"Paul Bacelar" a écrit :

Quel est votre besoin ?

Il est assez simple d'intégrer des composants graphiques .NET dans une
application MFC en C++ CLI.

Pourquoi Win32 ?
--
Paul Bacelar
MVP VC++


"Yamagazahe" wrote in message
news:
> Je suis bien d'accord, mais comment, car pour l'instant je n'ai pu exposer
> mon composant que comme objet com, de ce fait je ne peux pas héberger dans
> un
> containeur win32 car je n'ai pas son handle(je ne peux pas lui assigner de
> parent).
>
> Merci pour votre réponse
>
> "Sébastien FERRAND" wrote:
>
>> Yamagazahe a émis l'idée suivante :
>> > Bonjour,
>> >
>> > Peux-t-on utiliser des contrôles utilisateur (usercontrol) dotnet dans
>> > une
>> > application win32?
>> > si oui, comment?
>> >
>> > Merci d'avance
>> >
>> > Yamagazahe
>>
>> oui... a condition que ton control .net soit exposer comme composant
>> COM.
>>
>> Sébastien
>>
>> --
>> ---
>> Sébastien FERRAND
>> Microsoft Visual C# MVP
>> blog : http://blogs.developpeur.org/sebmafate
>>
>>
>>





Avatar
Yamagazahe
Merci Nico,

Ta proposition est celle quime convient le mieux, car mon but est de pouvoir
ajouter ou remplacer des fonctionnalités développer sous Delphi7, afin de
pour à terme migrer sous dot net tout un applicatif de Delphi à C#

Merci encore,
Yamagazahe

"Nico" wrote:

Il est possible d'intégrer un control utilisateur en utilisant les API win32.
Il faut que ton projet principal soit en .Net et lance ton appli win32. A
partir de là, tu récupères le handle de ton appli win32 avec la méthode
[DllImport("user32.dll")]
public static extern IntPtr FindWindow(string lpClassName, string
lpWindowName);

Puis tu définis cette fenêtre comme le parent de ton usercontrol avec la
méthode
[DllImport("user32.dll")]
public static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

Ce qui donne le code suivant :
IntPtr hIHMWin32 = User32.FindWindow(null, "titre de ta fenêtre);
SetParent(Usercontrol.Handle,hIHMWin32);

En espérant que cela puisse t'aider.
Nicolas
"Paul Bacelar" a écrit :

> Quel est votre besoin ?
>
> Il est assez simple d'intégrer des composants graphiques .NET dans une
> application MFC en C++ CLI.
>
> Pourquoi Win32 ?
> --
> Paul Bacelar
> MVP VC++
>
>
> "Yamagazahe" wrote in message
> news:
> > Je suis bien d'accord, mais comment, car pour l'instant je n'ai pu exposer
> > mon composant que comme objet com, de ce fait je ne peux pas héberger dans
> > un
> > containeur win32 car je n'ai pas son handle(je ne peux pas lui assigner de
> > parent).
> >
> > Merci pour votre réponse
> >
> > "Sébastien FERRAND" wrote:
> >
> >> Yamagazahe a émis l'idée suivante :
> >> > Bonjour,
> >> >
> >> > Peux-t-on utiliser des contrôles utilisateur (usercontrol) dotnet dans
> >> > une
> >> > application win32?
> >> > si oui, comment?
> >> >
> >> > Merci d'avance
> >> >
> >> > Yamagazahe
> >>
> >> oui... a condition que ton control .net soit exposer comme composant
> >> COM.
> >>
> >> Sébastien
> >>
> >> --
> >> ---
> >> Sébastien FERRAND
> >> Microsoft Visual C# MVP
> >> blog : http://blogs.developpeur.org/sebmafate
> >>
> >>
> >>
>
>
>