FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour DIALOG NOCAPTION no funciona con XIMAGE
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
DIALOG NOCAPTION no funciona con XIMAGE
Posted: Mon Oct 10, 2022 11:58 PM
HOla Amigos
Tengoi un Dialog al cual le qute el CAPTION mediante recursos, y tiene un control XIMAGE definido por usuario,pero no funciona bien, es decir, no aparece en la pantalla, es como si fuera invisible, si se activa el CAPTION en recursos si funciona, pero lo que deseo es quitar el CAPTIO dl Dialogo.
Code (fw): Select all Collapse
DEFINE DIALOG oDlg RESOURCE "PACIENTE_FICHA_MOD" FONT oApp:cFDialog 

       REDEFINE GET oDats[ 1] ;
                VAR aDats[ 2] ;
                PICTURE "@K!" ;
                FONT oApp:cFSayGet;
                ID 101 OF oDlg WHEN nModo = 1

       REDEFINE XIMAGE oFoto ;  //
                RESOURCE "NOIMAGEN" ;  //
                ID 120 OF oDlg
                oFoto:lCanPaste := .t.
                oFoto:lBmpTransparent := .f.
                oFoto:cToolTip := "Click Derecho Modificar Imagen 310 x 250 Px"


ACTIVATE DIALOG oDlg ON INIT (oDlg:Move(75, 1), oFoto:SetSource(aDats[17]) )
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Tue Oct 11, 2022 05:48 AM

Can we see the .rc file?

Regards



G. N. Rao.

Hyderabad, India
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 01:37 AM

// RESOURCE SCRIPT generated by "Pelles C for Windows, version 8.00".

include <windows.h>

include <commctrl.h>

include <richedit.h>

LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL

PACIENTE_FICHA DIALOG DISCARDABLE 119, 121, 559, 410
STYLE WS_CHILD|DS_3DLOOK|WS_SYSMENU|WS_VISIBLE
FONT 6, "MS Sans Serif"
{
CONTROL "", 101, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 8, 29, 80, 14
CONTROL "Custom control", 120, "TXIMAGE", 0x00000000, 444, 34, 103, 132
CONTROL "Button", 201, "Button", WS_TABSTOP, 89, 28, 95, 15
CONTROL "", 102, "Static", WS_BORDER|WS_GROUP, 8, 63, 421, 14
CONTROL "", 103, "Static", WS_BORDER|WS_GROUP, 8, 97, 421, 14
CONTROL "", 104, "Static", WS_BORDER|WS_GROUP, 8, 131, 100, 14
CONTROL "", 105, "Static", WS_BORDER|WS_GROUP, 115, 131, 100, 14
CONTROL "", 106, "Static", WS_BORDER|WS_GROUP, 222, 131, 100, 14
CONTROL "", 107, "Static", WS_BORDER|WS_GROUP, 329, 131, 100, 14
CONTROL "", 108, "Static", WS_BORDER|WS_GROUP, 8, 165, 100, 14
CONTROL "", 109, "Static", WS_BORDER|WS_GROUP, 115, 165, 73, 14
CONTROL "", 110, "Static", WS_BORDER|WS_GROUP, 222, 165, 68, 14
CONTROL "", 111, "Static", WS_BORDER|WS_GROUP, 329, 166, 79, 14
CONTROL "DNI :", -1, "Static", WS_GROUP, 8, 17, 86, 12
CONTROL "Apellidos y Nombres :", -1, "Static", WS_GROUP, 8, 51, 178, 12
CONTROL "Dirección :", -1, "Static", WS_GROUP, 8, 85, 86, 12
CONTROL "Departamento :", -1, "Static", WS_GROUP, 8, 119, 86, 12
CONTROL "Provincia :", -1, "Static", WS_GROUP, 115, 119, 86, 12
CONTROL "Distrito :", -1, "Static", WS_GROUP, 222, 119, 86, 12
CONTROL "Telféfonos :", -1, "Static", WS_GROUP, 329, 119, 86, 12
CONTROL "e-mail :", -1, "Static", WS_GROUP, 8, 153, 86, 12
CONTROL "Fecha Nacimiento :", -1, "Static", WS_GROUP, 115, 153, 86, 12
CONTROL "Edad :", -1, "Static", WS_GROUP, 222, 153, 86, 12
CONTROL "Sexo :", -1, "Static", WS_GROUP, 329, 153, 86, 12
CONTROL "Estado :", -1, "Static", WS_GROUP, 329, 17, 86, 12
CONTROL "", 4020, "Static", WS_BORDER|WS_GROUP, 330, 33, 99, 14
CONTROL "Button", 202, "Button", WS_TABSTOP, 452, 170, 95, 15
CONTROL "Button", 203, "Button", WS_TABSTOP, 452, 186, 95, 15
CONTROL "Button", 204, "Button", WS_TABSTOP, 452, 202, 95, 15
CONTROL "Tipo de Seguro :", -1, "Static", WS_GROUP, 9, 187, 86, 12
CONTROL "", 113, "Static", WS_BORDER|WS_GROUP, 8, 199, 100, 14
CONTROL "Número de Póliza:", -1, "Static", WS_GROUP, 116, 187, 86, 12
CONTROL "", 114, "Static", WS_BORDER|WS_GROUP, 115, 199, 100, 14
CONTROL "", 115, "Static", WS_BORDER|WS_GROUP, 221, 199, 73, 14
CONTROL "Vigencia del :", -1, "Static", WS_GROUP, 221, 187, 86, 12
CONTROL "", 116, "Static", WS_BORDER|WS_GROUP, 330, 199, 73, 14
CONTROL "Al :", -1, "Static", WS_GROUP, 330, 187, 86, 12
CONTROL "", 131, "Static", WS_BORDER|WS_GROUP, 8, 246, 206, 11
CONTROL "Apellidos y Nombres :", -1, "Static", WS_GROUP, 8, 234, 178, 11
CONTROL "", 133, "Static", WS_BORDER|WS_GROUP, 76, 274, 60, 11
CONTROL "", 134, "Static", WS_BORDER|WS_GROUP, 143, 274, 44, 11
CONTROL "Fech/ Nac", -1, "Static", WS_GROUP, 76, 262, 62, 11
CONTROL "Edad :", -1, "Static", WS_GROUP, 143, 262, 68, 11
CONTROL "", -1, "Button", BS_GROUPBOX, 0, 11, 551, 210
CONTROL "Hijos :", -1, "Static", WS_GROUP, 8, 289, 53, 11
CONTROL "", 132, "Static", WS_BORDER|WS_GROUP, 8, 273, 60, 11
CONTROL "DNI :", -1, "Static", WS_GROUP, 8, 261, 45, 11
CONTROL "Datos Familiares", -1, "Button", BS_GROUPBOX, 0, 221, 551, 184
CONTROL "", 4000, "Static", WS_GROUP, 0, 0, 560, 13
}

LANGUAGE LANG_ENGLISH,SUBLANG_ENGLISH_US

PACIENTE_FICHA_MOD DIALOGEX DISCARDABLE 6, 18, 555, 405
STYLE DS_SHELLFONT|WS_POPUP|DS_CONTEXTHELP|WS_CAPTION|WS_VISIBLE
FONT 8, "Tahoma", 0, 0, 1
{
CONTROL "", 101, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 1, 13, 80, 14
CONTROL "", 102, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 1, 47, 421, 14
CONTROL "", 103, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 1, 81, 421, 14
CONTROL "", 104, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 1, 115, 100, 14
CONTROL "", 105, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 107, 115, 100, 14
CONTROL "", 106, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 214, 115, 100, 14
CONTROL "", 107, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 322, 115, 100, 14
CONTROL "", 108, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 1, 149, 100, 14
CONTROL "", 109, "SysDateTimePick32", WS_TABSTOP, 108, 149, 96, 14
CONTROL "", 110, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 215, 149, 67, 14
CONTROL "Masculino", 111, "Button", BS_AUTORADIOBUTTON, 323, 147, 74, 10
CONTROL "Femenino", 112, "Button", BS_AUTORADIOBUTTON, 323, 156, 78, 10
CONTROL "", 113, "ComboBox", WS_BORDER|CBS_DROPDOWN|WS_VSCROLL|WS_TABSTOP, 1, 183, 100, 80
CONTROL "", 114, "Edit", ES_AUTOHSCROLL|WS_BORDER|WS_TABSTOP, 108, 183, 100, 14
CONTROL "", 115, "SysDateTimePick32", WS_TABSTOP, 215, 183, 96, 14
CONTROL "", 116, "SysDateTimePick32", WS_TABSTOP, 320, 183, 96, 14
CONTROL "Button", 202, "Button", WS_TABSTOP, 444, 165, 95, 15
CONTROL "Button", 203, "Button", WS_TABSTOP, 444, 181, 95, 15
CONTROL "DNI :", -1, "Static", WS_GROUP, 1, 1, 86, 12
CONTROL "Apellidos y Nombres :", -1, "Static", WS_GROUP, 1, 34, 186, 12
CONTROL "Dirección :", -1, "Static", WS_GROUP, 1, 68, 86, 12
CONTROL "Departamento :", -1, "Static", WS_GROUP, 1, 103, 86, 12
CONTROL "Provincia :", -1, "Static", WS_GROUP, 108, 103, 86, 12
CONTROL "Distrito :", -1, "Static", WS_GROUP, 215, 102, 86, 12
CONTROL "Telféfonos :", -1, "Static", WS_GROUP, 322, 102, 86, 12
CONTROL "e-mail :", -1, "Static", WS_GROUP, 1, 137, 86, 12
CONTROL "Fecha Nac :", -1, "Static", WS_GROUP, 108, 137, 85, 12
CONTROL "Edad :", -1, "Static", WS_GROUP, 215, 136, 86, 12
CONTROL "Sexo :", -1, "Static", WS_GROUP, 322, 136, 86, 12
CONTROL "Estado :", -1, "Static", WS_GROUP, 317, 0, 86, 12
CONTROL "", 119, "Static", WS_BORDER|WS_GROUP, 316, 14, 106, 14
CONTROL "Tipo de Seguro :", -1, "Static", WS_GROUP, 0, 170, 86, 12
CONTROL "Número de Póliza :", -1, "Static", WS_GROUP, 108, 171, 86, 12
CONTROL "Vigencia Del :", -1, "Static", WS_GROUP, 215, 171, 85, 12
CONTROL "Al :", -1, "Static", WS_GROUP, 320, 171, 85, 12
CONTROL "Grabar Imagen", 200, "Button", WS_TABSTOP, 465, 147, 59, 11
CONTROL "Custom control", 120, "TXIMAGE", 0x00000000, 437, 12, 103, 132
}

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 12:59 PM

Buenos días Willi. ¿Has probado con otra imagen, a ver si esta no está dañada?

Regards, saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 02:41 PM

HOa,probe con varias el detalle es que cuando el dialogo esta con el CAPTIO activo, funciona perfectamente, sin el CAPTION no aparece el dialogo...
SAlu2

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 03:30 PM

Y si excluyes el MANIFEST? Prueba, porfa.

Regards, saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 03:39 PM
Willi, intenta asi:

Code (fw): Select all Collapse
   REDEFINE XIMAGE oFoto ID 120 OF oDlg SOURCE "NOIMAGEN" UPDATE

   oFoto:lCanPaste := .t.
   oFoto:lBmpTransparent := .f.
   oFoto:Refresh()
   oFoto:cToolTip := "Click Derecho Modificar Imagen 310 x 250 Px"


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 08:06 PM
Hola Amigos.
Con oFoto:Refresh(), solo se ve una parte pequeña del DIALOG, pero con esto si funcionó
Code (fw): Select all Collapse
ACTIVATE DIALOG oDlg ON INIT ([b]oDlg:SetSize(840,650[/b]), oDlg:Move(100, 1), oFoto:SetSource(aDats[17]) )
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Oct 12, 2022 08:07 PM
Hola Amigos.
Con oFoto:Refresh(), solo se ve una parte pequeña del DIALOG, pero con esto si funcionó
ACTIVATE DIALOG oDlg ON INIT (oDlg:SetSize(840,650), oDlg:Move(100, 1), oFoto:SetSource(aDats[17]) )

Pero solo con oDlg:SetSize(840,650), y como repito, cuando se activa NOCAPTION en el recurso, todo bien...
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Fri Oct 21, 2022 02:27 PM

HOla amigos,,, alguna luz en el horizonte???

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Fri Oct 21, 2022 02:30 PM

Realice una DEMO completa con el archivo .prg y .rc y cárguelo en Mega Upload para probarlo.

Regards, saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Tue Jul 25, 2023 11:40 PM
Hola buenas tardes para todos

Retomando este tema... adjunto los ejemplos de lo que sucede para que sean descargados y probados. Uno de los ejecutables funciona, el otro no.

Como dice nuestro compañero Willi, al quitar la clausula nocaption sucede el inconveniente.

https://hymplus.com/forofw/ximage.zip
Code (fw): Select all Collapse
//La unica diferencia esta en el archivo de recursos 
//Funciona
STYLE WS_POPUP|DS_MODALFRAME|WS_CAPTION|WS_SYSMENU
CAPTION "FiveWin - RC from DBF generator"

//No funciona
STYLE WS_POPUP|DS_MODALFRAME|WS_SYSMENU
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Jul 26, 2023 02:50 PM
Esto?

https://imgur.com/9SgsNv0



Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Jul 26, 2023 03:06 PM
Mejoras:

https://imgur.com/VJfRa6N



Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: DIALOG NOCAPTION no funciona con XIMAGE
Posted: Wed Jul 26, 2023 03:29 PM
Listo:
Code (fw): Select all Collapse
// C:\LEANDRO\DBF2RC2.PRG y DBF2RC2.RC/RES
// MODIFICADO: 26/07/2023 - By Joao Santos/kapiabafwh@gmail.com

// .DBF to .RC generator. Quickly create Dialogs from .DBFs
/*
File Name  : DBF2RC.PRG

Description: .DBF to .RC Generator. Quickly develop Dialogs from
              your .DBF

Modified   :
  07/26/95 : CLW : Now creates a VersionInfo and comment in
                   the .CH to show where the file came from.
  10/10/95 : Code partially formatted, Grokked & verified by QA Team
             Tested by QA under FiveWin 1.9
  12/10/95 : -3 bugs fixed by James Bott (Internet 71706.551@compuserve.com)
             -Labels now in proper case (first letter upper, rest lower).
             -Labels now right-justified.
             -Field lengths are more accurately predicted (a problem with
              proportional fonts).

Note: The version info may have to be deleted if you wish to import multiple
RC's into a DLL since each will have the same version info ID.
*/

#include "FiveWin.ch"

#Define CLR_ORANGE     nRGB( 255, 165, 000 ) //-> Orange     - Laranja

STATIC cIniFile

FUNCTION Main()

   LOCAL oDlg, oGet, oIFto, oFnt, oFont
   LOCAL cDbfName := Space( 40 )
   LOCAL cTemp, oImage
   LOCAL cRuta := "..\bitmaps\pngs\2.png"

   SET _3DLOOK ON

   SetBalloon( .T. ) // Balloon shape required for tooltips
   SkinButtons()

   DEFINE FONT oFont  NAME "Ms Sans Serif"  SIZE 00, -14 BOLD
   DEFINE FONT oFnt   NAME "Ms Sans Serif"  SIZE 00, -12 BOLD

   DEFINE DIALOG oDlg RESOURCE "Dbf2RC2" FONT oFont

   REDEFINE SAY ID 401 OF oDlg COLORS CLR_ORANGE, CLR_WHITE UPDATE FONT oFont ;
      TRANSPARENT

   REDEFINE GET oGet VAR cDbfName ID 110 OF oDlg UPDATE

   // REDEFINE XIMAGE oIFto ID 4001 OF oDlg SOURCE cRuta UPDATE

   REDEFINE XIMAGE oImage ID 4001 OF oDlg FILE ".\LOGO.jpg" STRECH // RESIZE

   // oImage:lCanPaste := .T.
   oImage:lBmpTransparent := .T.
   // oImage:Refresh()
   oImage:cToolTip := "Leandro Usando XIMAGE y FiveWin The Best"

   REDEFINE BUTTON ID 120 OF oDlg                               ;
      ACTION ( cTemp :=                                         ;
      cGetfile( "*.dbf", "Select a DBF",, "..\data" ),          ;
      if( !Empty( cTemp ), ( cDbfName := cTemp,                 ;
      oGet:Refresh() ), ) )

   REDEFINE BUTTON ID 130 OF oDlg                               ;
      ACTION ( CursorWait(), GenRC( cDbfName ), CursorArrow() )

   REDEFINE BUTTON ID 140 OF oDlg ACTION( oDlg:End() ) CANCEL

   ACTIVATE DIALOG oDlg CENTERED

   oFnt:End()
   oFont:End()

RETURN NIL

FUNCTION GenRC( cDbfName )

   LOCAL n, nId   := 110
   LOCAL cRC      := ""
   LOCAL cCH      := "// Generated by DBF2RC" + CRLF
   LOCAL aFields
   LOCAL cRCFile  := ""

   IF Empty( cDbfName ) .OR. !File( cDbfName )

      MsgAlert( "Please select a DBF file first!" )

      RETURN NIL

   ENDIF

   CursorWait()

   USE ( cDbfName ) NEW shared

   aFields := dbStruct()

   cRC += '#include "..\include\WinApi.ch"' + CRLF
   cRC += '#include "' + Alias() + '.ch"' + CRLF + CRLF
   cRC += Alias() + " DIALOG 32, 18, 236," + ;
      Str( ( Len( aFields ) * 14 ) + 20, 4 ) + CRLF
   cRC += "STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION |" +     ;
      " WS_SYSMENU" + CRLF
   cRC += 'CAPTION "' + Alias() + '"' + CRLF
   cRC += 'FONT 8, "MS Sans Serif"' + CRLF
   cRC += "BEGIN" + CRLF

   FOR n := 1 TO Len( aFields )
      cCH += "#define ID_" + PadR( aFields[ n ][ 1 ], 11 ) +    ;
         Str( nId, 4 ) + CRLF

      DO CASE
      CASE aFields[ n ][ 2 ] $ "CND"
         cRC += '   RTEXT "' + properCase( aFields[ n ][ 1 ] ) + '"' +     ;
            Space( 10 - Len( aFields[ n ][ 1 ] ) ) + ", -1, 3," + ;
            Str( 5 + 14 * ( n - 1 ), 4 ) + ", 41, 8" + CRLF

         cRC += "   EDITTEXT ID_" + aFields[ n ][ 1 ] + ;
            ", 45," + Str( 3 + 14 * ( n - 1 ), 4 ) + ", " + ;
            Str( aFields[ n ][ 3 ] * 7 * .5 + 8, 4 ) + ", 12" + CRLF

      CASE aFields[ n ][ 2 ] == "L"
         cRC += '   CONTROL "' + properCase( aFields[ n ][ 1 ] ) + ;
            '", ID_' + aFields[ n ][ 1 ] + ;
            ', "BUTTON", BS_AUTOCHECKBOX | WS_CHILD | WS_VISIBLE | WS_TABSTOP, ' + ;
            "45, " + Str( 3 + 14 * ( n - 1 ), 4 ) + ;
            ", 50, 12" + CRLF

      CASE aFields[ n ][ 2 ] == "M"
         cRC += '   RTEXT "' + properCase( aFields[ n ][ 1 ] ) + '"' + ;
            Space( 10 - Len( aFields[ n ][ 1 ] ) ) + ", -1, 100," + ;
            Str( 5 + 14 * ( n - 1 ), 4 ) + ", 41, 8" + CRLF

         // cRC += '   CONTROL "' + aFields[ n ][ 1 ] + ;
         cRC += '   CONTROL "' + "" + ;
            '", ID_' + aFields[ n ][ 1 ] + ;
            ', "EDIT", ES_LEFT | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | WS_TABSTOP , ' + ;
            "145, " + Str( 3 + 14 * ( n - 1 ), 4 ) + ", "  + "77, 63" + CRLF
         // ^^^ gotta put it out to the right somewhere so you can see it
         // and not sit under a bunch of other controls
      ENDCASE

      nId += 10

   NEXT

   cRC += "END" + CRLF

   /* Add version info to .RC */                         // CLW
   cRC += "" + CRLF
   cRC += '1 VERSIONINFO LOADONCALL MOVEABLE ' + CRLF
   cRC += 'FILEVERSION 1, 0, 0, 0'            + CRLF
   cRC += 'PRODUCTVERSION 1, 0, 0, 0'         + CRLF
   cRC += 'FILEOS VOS__WINDOWS16'             + CRLF
   cRC += ' {'                                + CRLF
   cRC += ' BLOCK "StringFileInfo"'           + CRLF
   cRC += '  {'                               + CRLF
   cRC += '  BLOCK "040904E4"'                + CRLF
   cRC += '   {'                              + CRLF
   cRC += '   VALUE "ProductVersion", "Created by DBF2RC"' + CRLF
   cRC += '   VALUE "FileVersion", " Created on ' +               ;
      DToC( Date() ) + ' at ' + Time() + '"'       + CRLF
   cRC += '   VALUE "FileDescription", "Generated by DBF2RC"' + CRLF
   cRC += '   }'                              + CRLF
   cRC += ''                                  + CRLF
   cRC += ' }'                                + CRLF
   cRC += ''                                  + CRLF
   cRC += '}'                                 + CRLF

   MemoWrit( Alias() + ".ch", cCH )

   cRCFile := Alias() + ".rc"

   CursorArrow()

   IF !File( Alias() + ".rc" )

      CursorWait()

      MemoWrit( Alias() + ".rc", cRC )

   ELSEIF MsgYesno(                                             ;
         "That Resource Already Exists - Overwrite it?", "OOPS" )

      CursorWait()

      MemoWrit( Alias() + ".rc", cRC )

   ELSE

      MsgStop( "Rename the existing " + cRCFile + " and try again" )

   ENDIF

   CursorArrow()

   WinExec( "workshop" + " " + cRCFile )

   dbCloseArea()

RETURN NIL

STATIC FUNCTION properCase( cString )

RETURN Left( cString, 1 ) + Lower( Right( cString, Len( cString ) - 1 ) )

/* // DBF2RC2.RC / .RES
DBF2RC2 DIALOG 136, 48, 349, 247
STYLE DS_ABSALIGN | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU
FONT 8, "Arial"
{
 EDITTEXT 110, 4, 42, 137, 12, WS_BORDER | WS_TABSTOP
 PUSHBUTTON "&Find", 120, 143, 41, 42, 14
 DEFPUSHBUTTON "&Generate", 130, 29, 63, 60, 14
 PUSHBUTTON "&Done!", 140, 91, 63, 50, 14
 CONTROL "", 4001, "TXImage", 0 | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 93, 106, 162, 100
 LTEXT "Select DBF:", 401, 4, 30, 134, 12, NOT WS_GROUP
 ICON "fivewin", 201, 4, 60, 21, 18
}
*/

// FIN / END
Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341