<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.3020" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>hola,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>estoy empezando a programar con c en windows 32, 
utilizando una plantilla que inicia un menú, y a partir de ese menú pués se 
pueden abrir distintos cuadros de diálogo, etc..</FONT></DIV>
<DIV><FONT face=Arial size=2>lo que sucede es que me gustaria que mi apllicación 
se iniciara directamente en forma de cuadro de diálogo y sin meus. </FONT></DIV>
<DIV><FONT face=Arial size=2>No quisiera echar mano del WinApplWiz, "que ya veo 
que te lo hace todo, y sin embargo no entiendo lo que hace", preferiria tener la 
aplaicación base, que inicialice todo el el WinMain, y que desde ahí lance el 
cuadro de diálogo. </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>A continuzació pongo la plantilla que utilizo, 
teniendo en cuenta que en la estructura de ventana pogo la existencia de un 
menú, y apartir de allí, efectivamente se lanza el cuadro de dialogo, cosa uqe 
quiero evitar</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>#include <windows.h></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>/*  Declaración del procedimiento de 
ventana  */<BR>LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, 
LPARAM);<BR>BOOL CALLBACK DlgProc (HWND, UINT, WPARAM, LPARAM);<BR></FONT></DIV>
<DIV><FONT face=Arial size=2>int WINAPI WinMain (HINSTANCE 
hThisInstance,<BR>                    
HINSTANCE 
hPrevInstance,<BR>                    
LPSTR 
lpszArgument,<BR>                    
int nFunsterStil)<BR>{<BR>    HWND 
hwnd;               
/* Manipulador de ventana */<BR>    MSG 
mensaje;             
/* Mensajes recibidos por la aplicación */<BR>    WNDCLASSEX 
wndclassex;        /* Estructura de datos 
para la clase de ventana */</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>    /* Estructura de la 
ventana*/<BR></DIV>
<DIV></FONT><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>c o d i g o</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    /* Registrar la clase de 
ventana, si falla, salir del programa */<BR>    
if(!RegisterClassEx(&wndclassex)) return 0;</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>    /* La clase está registrada, 
crear la ventana */<BR>    hwnd = CreateWindowEx( . . . . . . 
.     );</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>    /* Mostrar la ventana 
*/<BR>    ShowWindow(hwnd, SW_SHOWDEFAULT);</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>    /* Bucle de mensajes, se ejecuta 
hasta que haya error o GetMessage devuelva FALSE */<BR>    
while(TRUE == GetMessage(&mensaje, NULL, 0, 0))<BR>    
{<BR>        /* Traducir mensajes de teclas 
virtuales a mensajes de caracteres 
*/<BR>        
TranslateMessage(&mensaje);<BR>        /* 
Enviar mensaje al procedimiento de ventana 
*/<BR>        
DispatchMessage(&mensaje);<BR>    }</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>    /* Salir con valor de retorno 
*/<BR>    return mensaje.wParam;<BR>}</FONT></DIV>
<DIV> </DIV><FONT face=Arial size=2>
<DIV><BR>/*  Esta función es invocada por la función 
DispatchMessage()  */<BR>LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT 
msg, WPARAM wParam, LPARAM lParam)<BR>{<BR>    static HINSTANCE 
hInstance;   <BR>    switch 
(msg)                  
/* manipulador del mensaje */<BR>    
{<BR>        case 
WM_CREATE:<BR>           
hInstance = 
((LPCREATESTRUCT)lParam)->hInstance;<BR>           
return 0;<BR>           
break;<BR>        case 
WM_COMMAND:<BR>           
switch(LOWORD(wParam)) 
{<BR>              
case 
CM_DIALOGO:<BR>                 c 
o d i g o</DIV>
<DIV>             
case 
CM_DIALOGO2:<BR>               
c o d i g o<BR>           
}<BR>           
break;<BR>        case 
WM_DESTROY:<BR>           
PostQuitMessage(0);    /* envía un mensaje WM_QUIT a la cola de 
mensajes */<BR>           
break;<BR>        
default:                  
/* para los mensajes de los que no nos ocupamos 
*/<BR>           return 
DefWindowProc(hwnd, msg, wParam, lParam);<BR>    
}<BR>    return 0;<BR>}</DIV>
<DIV> </DIV>
<DIV>BOOL CALLBACK DlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM 
lParam)<BR>{<BR>c o d i g o</DIV>
<DIV> </DIV>
<DIV>}</DIV>
<DIV> </DIV>
<DIV>BOOL CALLBACK DlgProc2(HWND hDlg, UINT msg, WPARAM wParam, LPARAM 
lParam)<BR>{<BR>c o d i g o</DIV>
<DIV> </DIV>
<DIV>}</DIV>
<DIV> </DIV>
<DIV></FONT> </DIV></BODY></HTML>