JLL
Aqui va el codigo que viene funcionando en clientes y que ahora no puedo hacerlo funcionar:
#include "FiveWin.ch"
#include "CdoSys.ch"
*#include "FGet.ch"
#include "Fileio.ch"
#define WS_3DLOOK 聽4
#define CLR_HBROWN nRGB( 205, 192, 176 )
#define CLR_NBLUE 聽nRGB( 142, 171, 194 )
*
STATIC oDlg, oFont, oFont2
STATIC cMailServer,; 聽 //:= PadR( "smtp.gmail.com", 60 ), ; 聽 聽 聽 聽 聽 聽 // servidor de correo
聽 聽 聽 聽cFrom 聽 聽 聽,; 聽 //:= PadR( "remitente@gmail.com", 60 ), ; 聽 聽 聽 聽// remitente
聽 聽 聽 聽nPort 聽 聽 聽,; 聽 //:= 465, ; 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽// puerto usado por el servidor de correo
聽 聽 聽 聽cUser 聽 聽 聽,; 聽 //:= Space( 60 ), ; 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽// nombre de usuario para autenticaci贸n
聽 聽 聽 聽cPass 聽 聽 聽 聽 聽 //:= Space( 30 ) 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 // contrase帽a para autenticaci贸n
STATIC nLine := 1
//--------------------------------------------------------------------------------------------------------------------//
*Function fEmail(cMailServer, cFrom, cnPort, cUser, cPass )
Function fEmail(cTo) 聽// Recibe como par谩metro el correo electr贸nico del cliente
聽 聽*local hBorland 聽 聽:= LoadLibrary("SgemBW32.DLL")
聽 聽 Local oDlg, oFont, oFont2, oFont3
聽 聽 Local oGet1, oGet2, oGet3, oGet4, oGet5
聽 聽 Local oBt1, oBt2, oBt3
聽 聽 Local cnPort:=25
聽 聽 Local cNombre:= ""
聽 聽 local cBcc := SPACE(600),;
聽 聽 聽 聽 聽 cSubject:=SPACE(120),;
聽 聽 聽 cAttach:=SPACE(600),;
聽 聽 聽 cBody 聽:=SPACE(800)
聽 聽 *
聽 聽 IF cto == NIL
聽 聽 聽 聽cTo 聽:= PadR( cTo, 180 )
聽 聽 ELSE
聽 聽 聽 聽cNombre 聽 聽 := SayGetClien() 聽 聽// forma parte de mis librerias
聽 聽 聽 聽cTo 聽:= PadR( "_destinatarios@hotmail.com", 180 )
聽 聽 ENDIF
聽 聽 *
聽 聽 IF !FILE( "emailCdo.ini" )
聽 聽 聽 聽CreaIni()
聽 聽 ENDIF
聽 聽 *
聽 聽 ReadIni() // proporciona los valores static
聽 聽 *
聽 聽 INI oIni FILENAME ( "./emailCdo.ini" )
聽 聽 聽 聽 GET cMailServer 聽 聽SECTION 'SETUPMAIL' ENTRY 'MailServer' 聽 OF oIni
聽 聽 聽 聽 GET nPort 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'puerto' 聽 聽 聽 OF oIni
聽 聽 聽 聽 GET cuser 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'usuario' 聽 聽 聽OF oIni
聽 聽 聽 聽 GET cpass 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'password' 聽 聽 OF oIni
聽 聽 聽 聽 GET cFrom 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'remitente' 聽 聽OF oIni
聽 聽 ENDINI
聽 聽DEFINE FONT oFont 聽NAME "Arial" SIZE 0, -16
聽 聽DEFINE FONT oFont2 NAME "Arial" SIZE 0, -10
聽 聽DEFINE FONT oFont3 NAME "Arial" SIZE 0, -14
聽 聽nPort := cnPort
聽 聽DEFINE DIALOG oDlg RESOURCE "Email" ;
聽 聽 聽 聽 聽 COLORS CLR_BLUE, CLR_LIGHTGRAY /*;
聽 聽 聽 聽 聽 STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, WS_3DLOOK )*/
聽 聽 聽 聽 聽 oDlg:lHelpIcon := .F.
聽 聽 聽 聽 聽 oDlg:cCaption := "Mensaje Electr贸nco para - "+cNombre
聽 聽 聽 聽 聽 oDlg:bKeydown := {|nKey| if( nKey == VK_F12 , ;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 (SetupMail(cMailServer, nPort, cUser, cPass, cFrom), ;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oDlg:Setfocus()), Nil) }
聽 聽 聽 聽REDEFINE GET oGet1 VAR cTo OF oDlg 聽 聽 聽 聽; 聽 聽 聽 聽 聽 聽 聽 // Destinatario
聽 聽 聽 聽 聽 聽 聽 聽 ID 101 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont2 聽UPDATE 聽PICTURE "@KS60" ;
聽 聽 聽 聽 聽 聽 聽 聽 COLORS CLR_BLUE, CLR_WHITE //SIZE 264, 11 PIXEL
聽 聽 聽 聽REDEFINE GET oGet2 聽VAR cBCC OF oDlg 聽 聽 聽; 聽 聽 聽 聽 聽 聽 聽 // con copia a
聽 聽 聽 聽 聽 聽 聽 聽 ID 102 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont2 聽UPDATE 聽PICTURE "@KS60" ;
聽 聽 聽 聽 聽 聽 聽 聽 COLORS CLR_BLUE, CLR_WHITE //SIZE 264, 11 PIXEL
聽 聽 聽 聽REDEFINE GET oGet3 聽VAR cSubject OF oDlg 聽 ; 聽 聽 聽 聽 聽 聽 // Asunto
聽 聽 聽 聽 聽 聽 聽 聽 ID 103 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽;
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont2 聽UPDATE PICTURE "@KS60" 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 COLORS CLR_BLUE, CLR_WHITE
聽 聽 聽 聽REDEFINE GET oGet4 聽VAR cAttach OF oDlg 聽 聽 ; 聽 // anexos
聽 聽 聽 聽 聽 聽 聽 聽 PICTURE "@KS60" 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 ID 104 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont2 聽UPDATE ;
聽 聽 聽 聽 聽 聽 聽 聽 COLORS CLR_BLUE, CLR_WHITE 聽// ACTION fAddAttach( aCtl[ 12 ] ) ; // descomentar para FWH 8.12 o posterior
聽 聽 聽 聽REDEFINE GET oGet5 聽VAR cBody OF oDlg 聽 聽 聽 聽; 聽 聽 聽 聽// cuerpo del mensaje
聽 聽 聽 聽 聽 聽 聽 聽 MEMO 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 ID 105 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽;
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont3 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 UPDATE 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽;
聽 聽 聽 聽 聽 聽 聽 聽 COLORS CLR_BLUE, CLR_WHITE
聽 聽 聽 聽 oGet5:bKeydown := { |KeyStroke| IIF( KeyStroke==VK_RETURN, ;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽(oGet5:cText(cBody+=CRLF),;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oGet5:GoBottom()),;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oGet5:Paste(KeyStroke) ) }
聽 聽 聽 聽REDEFINE BTNBMP oBt1 ID 108 聽 聽 聽;
聽 聽 聽 聽 聽 聽 聽 聽 RESOURCE "Attach" 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 OF oDlg 聽 聽 聽 聽 聽 聽 聽 聽 ; 聽 聽 聽 聽 聽 // buscar anexos
聽 聽 聽 聽 聽 聽 聽 聽 ACTION fAddAttach( oGet4 )
聽 聽 聽 聽REDEFINE BTNBMP oBt2 ID 106 聽 聽 聽; 聽 聽 聽 聽 聽 // enviar el mensaje
聽 聽 聽 聽 聽 聽 聽 聽 OF oDlg 聽 聽 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 RESOURCE "SendMail" 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont2 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 ACTION ( fSendMail( cTo, cBCC, cSubject, cBody, cAttach ),;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oGet5:cText(cBody:=SPACE(800)),;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oGet5:Setfocus(),;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oGet5:refresh(), oBt2:refresh() 聽)
聽 聽 聽 聽REDEFINE BUTTON oBt3 聽ID 2 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 OF oDlg 聽 聽 聽 聽 聽 聽 聽 聽 ; 聽 聽 聽 聽 聽 // Salir sin hacer nada
聽 聽 聽 聽 聽 聽 聽 聽 FONT oFont2 聽 聽 聽 聽 聽 聽 ;
聽 聽 聽 聽 聽 聽 聽 聽 ACTION oDlg:End()
聽 聽ACTIVATE DIALOG oDlg CENTERED //;
聽 聽 聽 聽 聽 聽 //VALID ( .T. )
聽 聽oFont:End()
聽 聽oFont2:End()
聽 聽oFont3:End()
* 聽 FreeLibrary(hBorland)
Return Nil
*******************************************************************************
*DLL32 FUNCTION BWCCRegister( hInst AS LONG ) AS WORD PASCAL LIB "SgemBW32.DLL"
*******************************************************************************
//---------------------------------------------------------------------------------------------//
Function fSendMail( cTo, cBCC, cSubject, cBody, cAttach )
聽 聽Local oCfg, oMsg, oError, nEle, cToken, ;
聽 聽 聽 聽 聽aAttach 聽:= {}, ;
聽 聽 聽 聽 聽lAuth 聽 聽:= IIF(! Empty( cUser ) .and. ! Empty( cPass ), .T., .F.) ,;
聽 聽 聽 聽 聽nSendOpt := 2 聽 // send using: 1 = pickup folder 聽2 = port
聽 聽Default cSubject := "Text de correo con CDO", ;
聽 聽 聽 聽 聽 聽cBody 聽 聽:= "Test de prueba de correo con CDO"
聽 聽If "GMAIL.COM" $ Upper( cMailServer ) .and. ( Empty( cUser ) .or. Empty( cPass ) )
聽 聽 聽 MsgStop( "Con GMail son requeridos nombre de usuario y contrase帽a", "Atenci贸n" )
聽 聽 聽 Return Nil
聽 聽EndIf
聽 聽CursorWait()
聽 聽nEle := 1
聽 聽While ! Empty( cToken := StrToken( cAttach, nEle++, "," ) )
聽 聽 聽 AAdd( aAttach, cToken )
聽 聽EndDo
聽 聽Try
聽 聽 聽 oCfg := CreateObject( "CDO.Configuration" )
聽 聽 聽 With Object oCfg:Fields
聽 聽 聽 聽 聽:Item( cdoSMTPServer ):Value 聽 聽 := allTrim( cMailServer )
聽 聽 聽 聽 聽:Item( cdoSMTPServerPort ):Value := nPort
聽 聽 聽 聽 聽:Item( cdoSendUsing ):Value 聽 聽 聽:= nSendOpt
聽 聽 聽 聽 聽If lAuth
聽 聽 聽 聽 聽 聽 :Item( cdoSMTPAuthenticate ):Value := 1
聽 聽 聽 聽 聽 聽 :Item( cdoSendUserName ):Value 聽 聽 := allTrim( cUser )
聽 聽 聽 聽 聽 聽 :Item( cdoSendPassword ):Value 聽 聽 := allTrim( cPass )
聽 聽 聽 聽 聽 聽 :Item( cdoSMTPUseSSL ):Value := 1
聽 聽 聽 聽 聽EndIf
聽 聽 聽 聽 聽:Update()
聽 聽 聽 End With
聽 聽 聽 oMsg := CreateObject( "CDO.Message" )
聽 聽 聽 With Object oMsg
聽 聽 聽 聽 聽:Configuration := oCfg
聽 聽 聽 聽 聽:From 聽 聽 聽 聽 聽:= allTrim( cFrom )
聽 聽 聽 聽 聽:To 聽 聽 聽 聽 聽 聽:= allTrim( cTo )
聽 聽 聽 聽 聽:Subject 聽 聽 聽 := allTrim( cSubject )
聽 聽 聽 聽 聽:TextBody 聽 聽 聽:= allTrim( cBody )
聽 聽 聽 聽 聽For nEle := 1 To Len( aAttach )
聽 聽 聽 聽 聽 聽 :AddAttachment(AllTrim( aAttach[ nEle ] ) )
聽 聽 聽 聽 聽Next
聽 聽 聽 聽 聽If ! Empty( cBCC )
聽 聽 聽 聽 聽 聽 :BCC := Trim( cBCC )
聽 聽 聽 聽 聽EndIf
聽 聽 聽 聽 聽:Send()
聽 聽 聽 End With
聽 聽Catch oError
聽 聽 聽 CursorArrow()
聽 聽 聽 MsgStop( "No se pudo enviar el mensaje" + CRLF 聽+ "Error: " + cValToChar( oError:GenCode) + CRLF + ;
聽 聽 聽 聽 聽 聽 聽 聽"SubC: " + cValToChar( oError:SubCode ) + CRLF + "OSCode: " + cValToChar( oError:OsCode ) + CRLF + ;
聽 聽 聽 聽 聽 聽 聽 聽"SubSystem: " + cValToChar( oError:SubSystem ) + CRLF + "Mensaje: " + oError:Description )
聽 聽 聽 oCfg := Nil
聽 聽 聽 oMsg := Nil
聽 聽 聽 Return Nil
聽 聽End Try
聽 聽oCfg := Nil
聽 聽oMsg := Nil
聽 聽SndPlaySound( GetWinDir() + "\media\Tada.wav", 0 )
聽 聽CursorArrow()
Return Nil
//---------------------------------------------------------------------------------------------//
Static Function fAddAttach( oGet )
聽 聽Local cFile, ;
聽 聽 聽 聽 聽cAttach := oGet:VarGet()
聽 聽cFile := cGetFile( "*.*", "Selecciona el archivo" )
聽 聽If ! Empty( cFile )
聽 聽 聽 cAttach := Lower( PadR( AllTrim( cAttach ) + If( ! Empty( cAttach ), ",", "" ) + AllTrim( cFile ), 180 ) )
聽 聽EndIf
聽 聽oGet:cText( cAttach )
Return Nil
********************************************************************************
Static Function SetupMail()
聽 LOCAL oDlg, oBt1, oBt2
聽 Local oGet1, oGet2, oGet3, oGet4, oGet5
聽 local oIni
聽 local lOk := .F.
聽 *
聽 local cxMailServer:=ALLTRIM(cMailServer)+REPLICATE(" ",60-LEN(ALLTRIM(cMailServer)))
聽 local nxPort:=nPort
聽 local cxUser:=ALLTRIM(cUser)+REPLICATE(" ",60-LEN(ALLTRIM(cUser)))
聽 local cxPass:=ALLTRIM(cPass)+REPLICATE(" ",30-LEN(ALLTRIM(cPass)))
聽 local cxFrom:=ALLTRIM(cFrom)+REPLICATE(" ",60-LEN(ALLTRIM(cFrom)))
聽 *
聽 DEFINE DIALOG oDlg RESOURCE "EmailSetup"
聽 聽 聽REDEFINE GET oGet1 VAR cxMailServer ID 101 OF oDlg
聽 聽 聽REDEFINE GET oGet2 VAR nxPort 聽 聽 聽 ID 102 OF oDlg PICTURE "9999"
聽 聽 聽REDEFINE GET oGet3 VAR cxUser 聽 聽 聽 ID 103 OF oDlg
聽 聽 聽REDEFINE GET oGet4 VAR cxPass 聽 聽 聽 ID 104 OF oDlg
聽 聽 聽REDEFINE GET oGet5 VAR cxFrom 聽 聽 聽 ID 105 OF oDlg
聽 聽 聽REDEFINE BUTTON oBt1 ID 1 OF oDlg ACTION (lOk := .T., oDlg:end() )
聽 聽 聽REDEFINE BUTTON oBt2 ID 2 OF oDlg ACTION oDlg:end()
聽 ACTIVATE DIALOG oDlg CENTERED
聽 IF lOk
聽 聽 聽cMailServer :=ALLTRIM(cxMailServer)
聽 聽 聽nPort 聽 聽 聽 :=nxPort
聽 聽 聽cUser 聽 聽 聽 :=ALLTRIM(cxUser)
聽 聽 聽cPass 聽 聽 聽 :=ALLTRIM(cxPass)
聽 聽 聽cFrom 聽 聽 聽 :=ALLTRIM(cxFrom)
聽 聽 聽*
聽 聽 聽WriteIni() 聽// escribe los nuevos valores al archivo INI
聽 聽 聽*
聽 ENDIF
RETURN NIL
procedure AppSys 聽// Xbase++ requirement
return
Static FUNCTION CreaIni()
聽 聽 *
聽 聽 nFileHandle := FCreate( "email.ini", FC_NORMAL )
聽 聽 cText := "[SETUPMAIL]"+CRLF+;
聽 聽 聽 聽 聽 聽 聽"MailServer = "+"smtp.gmail.com"+CRLF+;
聽 聽 聽 聽 聽 聽 聽"remitente 聽= "+"apic1002002@gmail.com"+CRLF+;
聽 聽 聽 聽 聽 聽 聽"puerto 聽 聽 = "+"465"+CRLF+;
聽 聽 聽 聽 聽 聽 聽"usuario 聽 聽= "+"apic1002002@gmail.com"+CRLF+;
聽 聽 聽 聽 聽 聽 聽"password 聽 = "+"miclave"+CRLF 聽// aqui va mi clave en el servidor de gmail
聽 聽 FWrite( nFileHandle, cText )
聽 聽 FClose( nFileHandle )
聽 聽 *
RETURN NIL
STATIC FUNCTION ReadIni()
聽 聽 local oIni
聽 聽 INI oIni FILENAME ( "./emailCdo.ini" )
聽 聽 聽 聽 GET cMailServer 聽 聽SECTION 'SETUPMAIL' ENTRY 'MailServer' 聽 OF oIni
聽 聽 聽 聽 GET cFrom 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'remitente' 聽 聽OF oIni
聽 聽 聽 聽 GET nPort 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'puerto' 聽 聽 聽 OF oIni
聽 聽 聽 聽 GET cuser 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'usuario' 聽 聽 聽OF oIni
聽 聽 聽 聽 GET cpass 聽 聽 聽 聽 聽SECTION 'SETUPMAIL' ENTRY 'password' 聽 聽 OF oIni
聽 聽 ENDINI
RETURN NIL
Static FUNCTION WriteIni()
聽 聽 local oIni
聽 聽 INI oIni FILENAME ( "./emailCdo.ini" )
聽 聽 聽 聽 SET SECTION "SETUPMAIL" ENTRY 聽'MailServer' TO cMailServer OF oIni
聽 聽 聽 聽 SET SECTION "SETUPMAIL" ENTRY 聽'remitente' 聽TO cFrom 聽 聽 聽 OF oIni
聽 聽 聽 聽 SET SECTION "SETUPMAIL" ENTRY 聽'puerto' 聽 聽 TO nPort 聽 聽 聽 OF oIni
聽 聽 聽 聽 SET SECTION "SETUPMAIL" ENTRY 聽'usuario' 聽 聽TO cUser 聽 聽 聽 OF oIni
聽 聽 聽 聽 SET SECTION "SETUPMAIL" ENTRY 聽'password' 聽 TO cpass 聽 聽 聽 OF oIni
聽 聽 ENDINI
Return nil
***********************************
Este es el contenido del RC
// Add this to your resources RC file
//#ifdef __FLAT
// 1 24 "WindowsXP.Manifest"
//#endif
//#ifdef __64__
// 1 24 "WindowsXP.Manifest64"
//#endif
//Emailm16 BITMAP "Emailm16.bmp"
//Exitm16 BITMAP "Exitm16.bmp"
SendMail BITMAP "./images/sendmail.bmp"
Attach BITMAP "./images/zoom.bmp"
Font BITMAP "./bmp/font.bmp"
Bold BITMAP "./bmp/Bold.bmp"
Italic BITMAP "./bmp/Italic.bmp"
Underline BITMAP "./bmp/Under.bmp"
Color BITMAP "./bmp/Color.bmp"
Left BITMAP "./bmp/Left.bmp"
Centro BITMAP "./bmp/Center.bmp"
Right BITMAP "./bmp/Right.bmp"
eMail DIALOG 33, 11, 368, 375
STYLE WS_OVERLAPPED | WS_VISIBLE | WS_CAPTION | WS_THICKFRAME
FONT 8, "MS Sans Serif"
{
LTEXT "Destinatario", -1, 17, 14, 43, 8
LTEXT "C/Copia a:", -1, 17, 30, 43, 8
LTEXT "Asunto", -1, 17, 43, 43, 8
LTEXT "Adj/Archivo", -1, 17, 57, 43, 8
EDITTEXT 101, 61, 13, 288, 12
EDITTEXT 102, 61, 27, 288, 12
EDITTEXT 103, 61, 41, 288, 12
EDITTEXT 104, 61, 55, 271, 12
EDITTEXT 105, 17, 79, 333, 245, ES_MULTILINE | WS_BORDER | WS_TABSTOP
CONTROL "", 106, "BorBtn", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 20, 341, 37,
25
CONTROL "Button", 2, "BorBtn", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 310, 341,
37, 25
GROUPBOX " Mensaje", 107, 12, 69, 343, 260, BS_GROUPBOX
PUSHBUTTON "", 108, 333, 55, 17, 14
}
setup DIALOG 35, 26, 368, 169
STYLE WS_OVERLAPPED | WS_VISIBLE | WS_CAPTION
CAPTION "Parametros de Conexi贸n"
FONT 8, "MS Sans Serif"
{
LTEXT "Servidor SMTP", -1, 10, 14, 50, 8
LTEXT "Puerto SMTP", -1, 16, 30, 44, 8
LTEXT "Usuario", -1, 33, 51, 27, 8
LTEXT "Clave Acceso", -1, 14, 65, 46, 8
LTEXT "Remitente", -1, 25, 93, 35, 8
EDITTEXT 101, 61, 13, 288, 12
CONTROL "1234", 102, "EDIT", WS_BORDER | WS_TABSTOP, 61, 27, 23, 12
EDITTEXT 103, 61, 49, 288, 12
EDITTEXT 104, 61, 63, 288, 12
EDITTEXT 105, 61, 91, 288, 12
CONTROL "", 1, "BorBtn", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 20, 123, 37, 25
CONTROL "", 2, "BorBtn", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 310, 123, 37, 25
}