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

C# Discussion :

Portage Win32 vers C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut Portage Win32 vers C#
    Bonjour

    Je ne sais pas trop où poser cette question :
    Je voudrais porter ce code Win32 en C#
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if ((hwndexe = FindWindow(NULL,"Mon titre")) != NULL)
    {
    		COPYDATASTRUCT cpdt = {ma_valeur};
    		cpdt.cbData = strlen(mon_message);
    		cpdt.lpData = mon_message;
    		SendMessage(hwndexe, WM_COPYDATA, (WPARAM)hwnd, (LPARAM)&cpdt);
    		return;
    }
    En bref, si la fenêtre existe, je veux lui envoyer un message de type WM_COPYDATA.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    Tu peux faire ca en passant par l'interop...

    Tu peux aller sur www.pinvoke.net pour y trouver ton bonheur

    The Monz, Toulouse

  3. #3
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Merci
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  4. #4
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Suite de mes problèmes :
    Je voudrais faire un SendMessage(hwnd, WM_COPYDATA, ...)
    J'ai déclaré ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            unsafe private class CopyData
            {
                public Int32 dwData;
                public Int32 cbData;
                public IntPtr lpData;
            }
    Mais il refuse ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
                    CopyData cpdt;
                    string str = "voiture"; 
                    Char[] t = str.ToCharArray();
                    cpdt.dwData = 1;
                    cpdt.cbData = str.Length;
     
                    cpdt.lpData =  t; <= là il n'est pas d'accord
     
                    int val = SendMessage(hwnd, 0x4A, 0, (int)&cpdt); 
                    là non plus, il ne veut pas que je prenne l'adresse .
    En bref, je ne sais pas comment passer l'adresse de ma chaîne "voiture" à lpData et comment passer l'adresse de ma structure cpdt.
    Merci de vos éclairages.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

Discussions similaires

  1. Portage Win32 threads vers Pthread
    Par azmodai dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 06/02/2011, 14h16
  2. Code Win32 vers Linux (stdin/stdout)
    Par MonsieurAk dans le forum Linux
    Réponses: 2
    Dernier message: 26/04/2006, 17h27
  3. Portage Delphi vers Java ou C#?
    Par delphi5user dans le forum Langage
    Réponses: 4
    Dernier message: 20/04/2006, 09h44
  4. [Free Pascal] Portage TP7 vers FreePascal
    Par DioManU dans le forum Free Pascal
    Réponses: 3
    Dernier message: 12/03/2006, 21h30
  5. Problème portage Delphi3 vers Delphi7
    Par bob1980 dans le forum EDI
    Réponses: 5
    Dernier message: 30/11/2005, 17h47

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