begin process at 2012 05 29 09:11:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Systeme

 > 

html+dialog sans MFC


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

html+dialog sans MFC

jeudi 2 octobre 2003 à 10:13:50 | html+dialog sans MFC

Manson

Salut,

voila j'essai d'integrer une page html dans une dialog, mais
sans MFC.

Par mfc c'est super simple. Mais sans ... ca devient plus dure.
J'ai integrer le controle ActiveX Web de Microsoft dans ma dialog, mais je ne peux plus afficher la fenetre.

j'ai donc fait un LoadLibrary de la dll : shdocvw.dll
et inclus : Exdisp.h
Mais toujours rien. Ma fenetre ne s'affiche pas.
j'ai donc fait un GetLastError, et un FormatMessage, et l'erreur est qu'il ne reconnais plus la classe de ma fenetre.

Voila le code :


#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <Exdisp.h>
#include "resource.h"

HINSTANCE hinst;

IWebBrowser2 *my_web;

BOOL CALLBACK Main_Window(HWND hdlg, UINT mssg, WPARAM wParam, LPARAM lParam)
{
switch (mssg)
{
case WM_INITDIALOG:
SetClassLong(hdlg, GCL_HICON, (long)LoadIcon(hinst, (LPCSTR)IDI_APP));
return TRUE;
case WM_COMMAND:
switch(wParam)
{
case ID_EXIT:
EndDialog(hdlg, 0);
return (0);
}
return (0);
}
return (0);
}

void show_error(char *file, int line)
{
LPVOID lpMsgBuf;
char title[1024];

sprintf(title, "Erreur dans fichier %s a la ligne %d", file, line);
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf, 0, NULL);
MessageBox( NULL , (char *)lpMsgBuf, title, MB_OK|MB_ICONERROR );
LocalFree( lpMsgBuf );
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, PSTR, int)
{
hinst = hInstance;

HINSTANCE Web = NULL;

Web = LoadLibrary("c:\\Winnt\\System32\\shdocvw.dll");
if (Web == NULL)
{
MessageBox(NULL, "can't load", "Error", MB_OK);
return (0);
}
OutputDebugString("Malloc de my_web ...");
my_web = (IWebBrowser2 *)malloc(sizeof(IWebBrowser));
OutputDebugString(" [ok]\n");

if ((DialogBoxParam(hInstance, (LPCTSTR)IDD_MAIN, NULL, Main_Window, 0)) == -1)
{
OutputDebugString("Creation de la fenetre ... [failed]\n");
show_error(__FILE__, __LINE__);
}
return 0;
}


Si quelqu'un connais une autre methode, ou si vous avez une solution ... je suus preneur.

D'avance merci.

Arno
jeudi 2 octobre 2003 à 12:39:16 | Re : html+dialog sans MFC

Kaid

En fait, c'est plus compliqué à utiliser que ca les composants COM, surtout pour ce que tu cherches à faire.

Je pense que ca va t'intéresser:
Embed an HTML control in your own window using plain C
Specifically shows how to embed a browser OLE object in your own window, and more generally demonstrates how to manipulate and create COM/OLE objects, in plain C (ie, no MFC, WTL, ATL, .NET, C#, nor even C++). The latter is applicable to many other uses, such as creating your own script engine.

Kaid - kaid.fr.st
jeudi 2 octobre 2003 à 12:51:07 | Re : html+dialog sans MFC

Manson

Salut,

j'ai reussi a faire ce que je voulais a l'instant. Et je n'ai finalement pas utiliser le controle ActiveX implenter a la main, mais directement les class que le site dont tu m'as
donne le lien parle.

Ca marche tres bien.

Encore merci.

Arno


Cette discussion est classée dans : web, include, dialog, return, hinstance


Répondre à ce message

Sujets en rapport avec ce message

Ca veut pas s'afficher !!! [ par Nini ] Bon alors voilà le probleme : je doit faire afficher une phrase aléatoirement avec un switch et un rand mais elle veut pas s'afficher. Voilà ma source PB EditBox [ par SfyLer ] Bonjour à tous !J'ai créé un scanner de port sous dos, et j'ai commencer a le faire sous windows, j'ai presque fini le seul pb que j'ai c'est que je n Probleme : error LNK2001: unresolved external symbol... [ par Mr.X ] Tous d'abor bonjour, quand je compile mon programme (visual c++ 6.0), il m'affiche cette erreur, ece que quelqu'un pourrais l'aider ? :Main.obj : erro types dans lex / yacc [ par Guillemouze ] bon jvais essayer detre clair.....alors g un code en lex et yass mais g un probleme lors de la compilation du fichier .tab.c et g limpression que ca v boite de dialog d'impression qui ne veut pas s'afficher [ par hrp ] pourquoi ce code n'affiche-t-il pas la boite de dialog d'impression?//---------------------------------------------------------------------------#incl Pb sur un ptit bout de prog en DirectX.... [ par Haldwin ] Salut a tous....Voila j'ai deux ptits pbs quand je lance cette appli ci-dessous... (VC++)La première est q'une fois sur deux ma variable hWnd apres le dialogbox ??? [ par supergrey ] Bonjour tout le monde je voudrai savoir pourquoi ce programme n'affiche rien.//ca commence ici#include "stdafx.h"#include "stdio.h"#include "iostream. probleme focus ? [ par sleeper41 ] bonjourvoila j ai 2 threads qui lance 2 dialogbox avec sur l un 1 bouton et sur l autre 1 editbox.mon but est quand j appuie sur le bouton d'ecrire le Probleme de string! [ par frdestroyers27 ] Bonjours a tous!j'ai un probleme que je n'arrive pas a resoudre et je ne trouve pas d'aide nul part pour ca! je vais mettre mon code en gros ca cherch Problème de creation d'application en win32 [ par zibo3 ] J'ai un petit soucis, je me lance dans la programmation graphique windows et comme j'ai lu qu'il fallait éviter les MFC, je m'y efforce. Mon premier p


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales