Accueil > > > UTILISER L'INTERFACE D'UNE DLL DANS UNE MDI[SANS MFC][DEV-C++][RÉPONSE FORUM]
UTILISER L'INTERFACE D'UNE DLL DANS UNE MDI[SANS MFC][DEV-C++][RÉPONSE FORUM]
Information sur la source
Description
Voilà ce code permet d'utiliser une boite de dialogue sauvegardée sous forme de ressource dans n'importe quel .dll ou .exe dans une fenêtre MDI . Ce n'est pas si facile que çà car je rappel qu'une boite de dialogue est une fenêtre popup et faire la transformation nécessaire m'a pris 2 jours a être trouvée donc s'il vous plait éviter les truc du genre "c'est bidon j'aurais fais çà moi même" et lsiait le code pour vous en rendre compte .
Source
Conclusion
Voilà le fonctionnement(en gros) ->mon programme(pour ne pas se limiter à la réponse du forum) affiche une Frame avec un menu . Le choix Fichier->Ouvrir permet de sélectionenr le .exe ou .dll a scanner . Toutes les boites de dialogues trouvées son listées dans une TreeView d'une fenêtre MDI dans cet ordre là: +Root +Dialogues +Nom(id ou string) +Lang(en anglais: Windows oblige)
en double cliquant sur le language de la boite de dialogue voulue(i.e: +Lang(en anglais: Windows oblige)" la boite de dialogue est chargée et mise dans une autre fenêtre MDI(elle prend le nom de la boite de dialogue mais pas l'icône) .
NOTE: dans le menu fenêtre se trouve un choix "Parcourir": chez moi il affiche la liste des fenêtre MDI mais je l'ai trouvée par pur hasard te je voudrais juste savoir s'il marche chez vous ?! Les autre choix sont eux plus standard .
Quelques détails: A cause de la méthode utilisée pour faire une telle transformation, il se peut que certains styles de la fenêtre ne soit pas conservés car il sont incompatible avec ce type de transformatiosn donc ne rallez pas pour çà . De plus si la boite de dialogues possède une icône, celle-ci n'est pas affichée dans la fenêtre MDI(mais ce n'est pas non plus très dur à changer) .
Détail de fonctionnement: J'utilise une méthode que je pensait jusque là impossible à savoir que la boite de dialogue devient(après quelques changement de style très précis) un fils d'une fenêtre MDI que l'on met à la bonne taille . La boite de dialogue réagit normalement et conserve sont DialogProc(évidemment il faut l'implémenter) sauf pour les messages de fenêtre(i.e: WM_SIZE, WM_CLOSE, WM_PAINT...) puisque c'est la fenêtre MDI qui les reçoit . Enfin on maximise la boite de dialogue pour que celle-ci prenne exactement la taille de la fenêtre MDI(si on se contente de la mettre à la bonne taille, même exactement çà marche pas(ou plutôt mal) ) .
NOTE: j'ai mis dans mon programme quelques boite de dialogue(et les icônes) en ressource pour l'exemple: CELLES-CI NE SONT PAS DE MOI, elle provienne de source sur ce (magnifique) site qu'est cppfrance car non seulement je n'est pas d'éditeur de ressources et en plus j'ai pas que çà à faire) .
Voilà j'ai fini mon exposé, si ce programme ne marche sur votre ordi dites exactement de qui ne va pas . Je l'ai testé uniquement sur mon Windows XP Familly .
Historique
- 10 juin 2005 23:51:58 :
- Mise à jour du code source: celui-ci est désormais commenté(en anglais mais tout le monde sait lire l'anglais non......non bah tant pis !) et la source a été mise en niveau expert .
- 11 juin 2005 13:40:43 :
- Bon dans ma grande gentillesse j'ai commenté la source en anglais ET français et corrigé quelques commentaires foireux(fautes de frappes)
- 01 décembre 2005 21:12:29 :
- ajout des mots-clés
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
utiliser l'interface d'une dll dans une MDI [ par julienbad ]
Bonjour à tous! j'aurais voulu savoir si quelqu'un savait comment utiliser une dll possèdant une interface graphique (CDialog) pour l'affich
API Windows - Problème Dialog [ par banane_rose ]
salut, dans mon template de ma dialog quand je rajoute la ligne pour les styles STYLE DS_MODALFRAME | WS_POPUP ça me met [Res
interface pour modeleur 3d [ par vladisback ]
bonjour, j'aimerai me lancer dans la creation d'un logiciel de modelisation 3D, qui soit portable (au moins linux et windows). j'ai l'habitude de fair
DLL : interface IUnknown en C [ par Mastersam ]
Bonjour, je créé actuellement en driver ASIO sous forme de DLL, j'ai eu un exemple général de création d'un driver dans la SDK ASIO 2.2, mais tout est
Détourner la copie de windows par un hook [ par alphaone ]
Bonjour, je sais qu'il est possible de détourner la copie de windows pour copier avec sont logiciel et non pas avec la copie de windows, mais je suis
Interface Excel + Dll C++ [ par GRACCAH ]
Bonjour à tous, J'ai programmé un outil, organisé autour d'une interface Excel faisant appel à une dll (release) developpée en C++ dans laquelle se tr
Dll sous Linux et Windows [ par alexatique ]
Bonjour,Voilà, j'arrive à réaliser des dlls sous windows à l'aide de visual studio.J'arrive également à faire un programme qui appelle cette dll.Mais
Dll g++ sous VS [ par greenzephyr ]
Salut à tous, Je dois faire une appli Windows Form qui utilise une dll compilée sous Linux avec g++. Je dispose des sources de cette dll. Pour vous
cree boite dialog dans DLL [ par bonjour__ ]
salut tous le monde.j'ai cherche comment cree les boite de dialog avec leur fonction procedure ( modale ou non )dans les fichier executable DLL .voici
API Windows - Problème ChooseColor [ par banane_rose ]
salut voilà j'ai une dialog et dans ma dialog j'ai un bouton censé faire apparaitre la dialog commune "choosecolor" , mais dans la structur
|
Derniers Blogs
TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
WIN APIWIN API par omarino_007
Cliquez pour lire la suite par omarino_007
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|