Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
Retroceder   COBOL Foro > IDE-s y compiladores COBOL > Fujitsu COBOL > PowerCOBOL V3L10 (Win32)
PowerCOBOL V3L10 (Win32) IDE Freeware compatible con Windows 7/8/10
Noticias y Avisos
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sugerencia] Añadir más idiomas oficiales al Foro Kuk COBOLForo.es 15 14 de marzo de 2018 21:34
[Componente] DLL nuevos controles para PowerCOBOL V3L10 Kuk PowerCOBOL V3L10 (Win32) 4 17 de marzo de 2017 17:39
[Información] Funciones en las DLL-s de controles PowerCOBOL v3 Kuk PowerCOBOL V3L10 (Win32) 4 11 de noviembre de 2016 17:27
[Sintaxis] Evento Timer de más de 65535 ms Josber PowerCOBOL (ActiveX, v4 - v11) 4 8 de junio de 2016 16:19
[Componente] Número de más de 4 decimales en Textbox Fito PowerCOBOL (ActiveX, v4 - v11) 6 22 de abril de 2016 17:28
Respuesta
 
Herramientas

  #1
Antiguo 10 de septiembre de 2015, 10:56
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 22:56
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Nuclear Añadir más controles a PowerCOBOL v3

Amigos, he estudiado un poco el tema, de cómo se agregan los controles que vienen en el pack de Power 3. Básicamente, en el registro hay lo siguiente:

En la carpeta Include:
  • F5BBEIMG - C:\FSC\PCOBOL32\CLASS
  • F5BBODBC - C:\FSC\PCOBOL32\CLASS
  • F5BBRUN2 - C:\FSC\PCOBOL32\CLASS
  • PowerCOBOL - C:\FSC\PCOBOL32\CLASS

En la clave Library:
  • F5BBEIMG - C:\FSC\PCOBOL32\F5BBEIMG.LIB
  • F5BBODBC - C:\FSC\PCOBOL32\F5BBODBC.LIB
  • F5BBRUN2 - C:\FSC\PCOBOL32\F5BBRUN2.LIB
  • PowerCOBOL - C:\FSC\PCOBOL32\F5BBRUNS.LIB

En la clave Parts:
  • F5BBEIMG - C:\FSC\PCOBOL32\F5BBEIMG.DLL
  • F5BBODBC - C:\FSC\PCOBOL32\F5BBODBC.DLL
  • F5BBRUN2 - C:\FSC\PCOBOL32\F5BBRUN2.DLL

Y en la clave Options:
  • Parts - F5BBRUN2;F5BBEIMG;F5BBODBC

En definitiva, para la mayoría hay:
  • Un archivo *.LIB
  • Un archivo *.DLL
  • Una clase definida en OO COBOL en la carpeta CLASS

No sé cómo se conectan los controles en los IDE-s, pero todo esto me lleva a pensar que se trata de conexión bastante "clásica". He intentado añadir COMCTL32.DLL pero hay varios problemas. Primero, las antiguas DLL de Windows 98 no valen porque hacen referencias a rutinas en Kernel32.dll que ya no están disponibles en las nuevas OS. Otro problema es que no tengo un juego DLL + LIB acorde uno al otro. Y tercer problema, es que hay que escribir ficheros OCB que correspondan. He entendido cómo se escriben, pero no tengo tiempo de pegarme con ello.

Lo que me falta es saber cómo se conecta el fichero OCB con el control en sí. Y necesito que alguien me eche una mano escribiendo OCB-s (explicaré cómo va el tema más tarde).

Claramente no hay garantías de que lo consigamos, pero si sale - sinceramente sería la hostia!!!


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #2
Antiguo 10 de septiembre de 2015, 12:14
IDENTIFICATION DIVISION
Eslopes
Guru de OO COBOL
ENVIRONMENT DIVISION
Avatar de Eslopes
DATA DIVISION
Forero desde (Registrado)agosto 2015
Brasil
Última Actividad11.05.2019 21:19
PROCEDURE DIVISION
PostsPosts: 66
Ha dicho GraciasEnviado: 17
Ha recibido agradecimientosRecibido: 29
Mejores respuestasSoluiones: 2
ReputaciónReputación: 7
Eslopes is on a distinguished road Eslopes is on a distinguished road Eslopes is on a distinguished road
Predeterminado

Olá,

coincidentemente eu estava estudando os OCBs para entender como eles funcionavam. Não consegui nenhuma documentação sobre a sintaxe usada, nem foi possível compilar um código semelhante.

Posso escrever o código OCB, mas não tenho idéia sobre como compilar ou mesmo testar.

Saludos, Emerson

PS: Um controle que poderia agregar muito valor seria o de um GroupBox com clipping, como existe no PowerCobol 4 ou superior. Dá para criar áreas de scroll, relatórios e outras cositas más
Eslopes no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
Kuk (10 de septiembre de 2015)
  #3
Antiguo 10 de septiembre de 2015, 13:20
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 22:56
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

Hola Eslopes, los OCB-s no hace falta compilarlos. Se deben guardar en la carpeta CLASS, para que el compilador los coja a la hora de compilar.

Los OCB-s de PC3 son diferentes a los de PC9 (que es el que uso normalmente). En este caso vamos a hablas del formato de los OCB para PC3.

Mira, este es el powckbtn.ocb el cual corresponde a CheckButton (o CHECKn como se asigna en un Sheet):

Código COBOL:
  1. IDENTIFICATION  DIVISION.                                                                
  2. CLASS-ID.   POWCKBTN.                                                                    
  3. ENVIRONMENT DIVISION.                                                                  
  4. CLASS       SECTION.                                                                      
  5.     INHERIT POWFUND EXTERNAL.       *> ƒNƒ‰ƒXŒp³‚Ì‹Lq                                    
  6. DATA        DIVISION.                                                                        
  7. CLASS       SECTION.                                                                      
  8. 01 POW-CHECK    PIC S9(4) COMP-5.                                                        
  9. 01 POW-TEXTPOS  PIC S9(4) COMP-5.                                                      
  10. PROCEDURE   DIVISION.                                                                    
  11.    FUNCTION MOVE OF POW-CHECK (BY VALUE TYPE IS NUMERIC PIC S9(4) COMP-5) IS EXTERNAL  
  12.         REPLACING NAME BY "XPOWCKBTNSETCHECK" .                                            
  13.    FUNCTION REFERENCE OF POW-CHECK () IS EXTERNAL BY VALUE PIC S9(4) COMP-5            
  14.         REPLACING NAME BY "XPOWCKBTNGETCHECK" .                                            
  15.    FUNCTION MOVE OF POW-TEXTPOS (BY VALUE TYPE IS NUMERIC PIC S9(4) COMP-5) IS EXTERNAL
  16.         REPLACING NAME BY "XPOWCKBTNSETTEXTPOS" .                                          
  17.    FUNCTION REFERENCE OF POW-TEXTPOS () IS EXTERNAL BY VALUE PIC S9(4) COMP-5          
  18.         REPLACING NAME BY "XPOWCKBTNGETTEXTPOS" .                                          
  19. END CLASS POWCKBTN.                                                                    

En este caso, tenemos herencia en una clase básica POWFUND que creo que viene en todos los OCB. Luego en CLASS SECTION tenemos las propiedades. FUNCTION MOVE equivale a SET, FUNCTION REFERENCE equivale a GET. REPLACING NAME BY contiene el nombre real de la función que está en la DLL.

Entonces, según yo he entendido, en este caso cuando hacemos:

Código COBOL:
  1.      MOVE POW-ON TO POW-CHECK OF CHECK1

Realmente por debajo se transforma en:

Código COBOL:
  1.      CALL "XPOWCKBTNSETCHECK" WITH STDCALL USING BY VALUE POW-CHECK

En la DLL del nuevo control, debe hacer funciones equivalentes.

Al menos es lo que he deducido hasta ahora. Seguramente hay otras funciones que no vemos aquí, pero por ejemplo el F5BBRUNS.DLL que es el que contiene los controles básicos, exporta algunas funciones más para todos los controles:

Lista de todas las funciones que exporta dicha DLL:

Código:
_CaGetCallUserProc@4
_CaGetUserProc@16
_CaTranslateMessage@8
_CsInitShow@4
_CwWNDStyleDlgProc@16
FXPOWGRAPHGETAXISVALUE
FXPOWGRAPHGETDATA
FXPOWGRAPHGETDATACOLOR
FXPOWGRAPHGETLOWER
FXPOWGRAPHGETNUMDATA
FXPOWGRAPHGETPIEVALUE
FXPOWGRAPHGETSTYLE
FXPOWGRAPHGETUPPER
FXPOWGRAPHSETAXISVALUE
FXPOWGRAPHSETDATA
FXPOWGRAPHSETDATACOLOR
FXPOWGRAPHSETLOWER
FXPOWGRAPHSETNUMDATA
FXPOWGRAPHSETPIEVALUE
FXPOWGRAPHSETSTYLE
FXPOWGRAPHSETUPPER
_GetPiDdeClassHandle@0
_Get_PowCkbtn_Check@4
_Get_PowCkbtn_TextPos@4
_Get_PowCombo_GotEditEvent@4
_Get_PowCombo_IMEMode@4
_Get_PowCombo_KillEditEvent@4
_Get_PowCombo_ReturnKeyEvent@4
_Get_PowCombo_Sort@4
_Get_PowCombo_Style@4
_Get_PowDate_Edge@4
_Get_PowDde_DataStyle@4
_Get_PowDde_FmtName@12
_Get_PowDde_ItmName@12
_Get_PowDde_SvcName@12
_Get_PowDde_TpcName@12
_Get_PowEdit_3D@4
_Get_PowEdit_Border@4
_Get_PowEdit_GotEditEvent@4
_Get_PowEdit_HScrollBar@4
_Get_PowEdit_HideSel@4
_Get_PowEdit_IMEMode@4
_Get_PowEdit_KillEditEvent@4
_Get_PowEdit_Limit@4
_Get_PowEdit_LimitValue@4
_Get_PowEdit_MultiLine@4
_Get_PowEdit_Password@4
_Get_PowEdit_PasswordChar@4
_Get_PowEdit_ReadOnly@4
_Get_PowEdit_ReturnKeyEvent@4
_Get_PowEdit_VScrollBar@4
_Get_PowFile_Arch@4
_Get_PowFile_Hidden@4
_Get_PowFile_Mask@12
_Get_PowFile_Normal@4
_Get_PowFile_ReadOnly@4
_Get_PowFile_System@4
_Get_PowImage_ImageName@12
_Get_PowImage_Kind@4
_Get_PowImage_Stretch@4
_Get_PowLabel_Alignment@4
_Get_PowLabel_Edge@4
_Get_PowLabel_Round@4
_Get_PowLabel_Transparent@4
_Get_PowLabel_VAlignment@4
_Get_PowList_DblClkKey@4
_Get_PowList_SelStyle@4
_Get_PowList_Sort@4
_Get_PowMeta_MetaName@12
_Get_PowPfkey_VKid@4
_Get_PowPsbtn_Default@4
_Get_PowRdbtn_Check@4
_Get_PowRdbtn_TextPos@4
_Get_PowRect_Edge@4
_Get_PowRect_Round@4
_Get_PowRect_TransParent@4
_Get_PowSound_SoundName@12
_Get_PowTimer_Activate@4
_Get_PowTimer_Interval@4
_Get_PowhScrl_LargeStep@4
_Get_PowhScrl_Pos@4
_Get_PowhScrl_Range@12
_Get_PowhScrl_SmallStep@4
_Get_PowvScrl_LargeStep@4
_Get_PowvScrl_Pos@4
_Get_PowvScrl_Range@12
_Get_PowvScrl_SmallStep@4
POWEROPENSHEET
_PiANIMEAddSel@8
_PiANIMEAddTrailPATHChar@8
_PiANIMEClearFrame@4
_PiANIMECreateDIBPalette@4
_PiANIMEGetClassHandle@0
_PiANIMEGetPalette@4
_PiANIMEGetPlay@4
_PiANIMEGetRepeat@4
_PiANIMEGetStretch@4
_PiANIMELoadDIBFile@8
_PiANIMESetPalette@8
_PiANIMESetPlay@8
_PiANIMESetRepeat@8
_PiANIMESetStretch@8
_PiDdeWndProc@16
_PiMciGetChild@4
_PiMciGetClassHandle@0
_PiMciGetDevOpen@4
_PiMciGetDevPlay@4
_PiMciGetDeviceName@8
_PiMciGetElementName@8
_PiMciGetPlayer@4
_PiMciGetSize@4
_PiMciGetWindowSizeFlag@4
_PiMciSetChild@8
_PiMciSetDevOpen@8
_PiMciSetDevPlay@8
_PiMciSetDeviceName@8
_PiMciSetElementName@8
_PiMciSetPlayer@8
_PiMciSetSize@8
_PiMciSetWindowSizeFlag@8
_PiPICChangeLPPIC@20
_PiPICCheckEditText@8
_PiPICCreatePicInfo@20
_PiPICEditPicText@28
_PiPICGetClassHandle@0
_PiPICGetEdit@4
_PiPICGetLayoutString@8
_PiPICGetMemSize@4
_PiPICGetPicAlphaNumeric@24
_PiPICGetPicNational@24
_PiPICGetPicNumeric@28
_PiPICGetPicTypeSize@4
_PiPICGetSize@4
_PiPICGetTransparent@4
_PiPICMessageBox@8
_PiPICPICSTRINGTolpPIC@20
_PiPICReEditPicText@28
_PiPICSelectCaret@8
_PiPICSendClipboardText@16
_PiPICSendDBCS@12
_PiPICSetPicAlphaNumeric@28
_PiPICSetPicNational@28
_PiPICSetPicNumeric@28
_PiPICUpdateCheckText@16
_PidatWndProc@16
_PowTableM_GetColWidth@8
_PowTableM_GetRowHeight@8
_PowTableUT_CalcVirtualSize@20
_PowTableUT_ChangeColWidth@12
_PowTableUT_ChangeRowsAndCols@12
_PowTableUT_SetCaptions@12
_PowTableUT_SetColPicString@116
_PowTableUT_SetColStyle@16
_PowTableUT_SetupScrollbars@8
_PowerChainAddItem_pc@4
_PowerChainDelItem_pc@4
_PowerChainIndentItem_pc@4
_PowerChainInsItem_pc@4
_PowerChangeItemName_pc@8
_PowerChangeItemStyle_pc@12
_PowerCloseSheetForCapture_pc@4
_PowerCloseTestSheet_pc@4
_PowerCreateMenuItem_pc@20
_PowerCreateMenu_pc@4
_PowerDeleteItem_pc@4
_PowerDestroyMenuItem_pc@8
_PowerDestroyObject@4
_PowerDuplicateItem_pc@28
_PowerEnterDebugMode@4
_PowerExitDebugMode@4
_PowerFreeEventRes@4
_PowerGetBackBrushPattern_pc@8
_PowerGetBackBrush_pc@8
_PowerGetBackMode_pc@4
_PowerGetFont_pc@8
_PowerGetForeColor_pc@8
_PowerGetItemArrayStatus_pc@8
_PowerGetItemList@4
_PowerGetItemParam_pc@8
_PowerGetItem_pc@4
_PowerGetItemhWnd_pc@4
_PowerGetMapMode_pc@8
_PowerGetMenuClassName_pc@4
_PowerGetMenuItemName_pc@8
_PowerGetNamesFromRecipe@12
_PowerGetNames_pc@12
_PowerGetPosition_pc@8
_PowerGetRecipe_pc@4
_PowerGetReplacingInfo_pc@4
_PowerGetRootItem_pc@4
_PowerGetTextColor_pc@8
_PowerGetTitleLength_pc@4
_PowerGetTitle_pc@12
_PowerGetpnItem_pc@12
_PowerIsGroupMark_pc@4
_PowerIsTabStop_pc@4
_PowerLoadEventRes@4
_PowerMakeDLLINFO@16
_PowerMakeEXEINFO@20
_PowerMenuClick_pc@8
_PowerNewApp@12
_PowerNewItem_pc@36
_PowerOpenItem_pc@16
_PowerOpenSheetForCapture_pc@8
_PowerOpenTestSheet_pc@12
_PowerSetBackBrush_pc@8
_PowerSetBackMode_pc@8
_PowerSetFont_pc@8
_PowerSetForeColor_pc@8
_PowerSetGroupMark_pc@8
_PowerSetMapMode_pc@12
_PowerSetPosition_pc@8
_PowerSetTabStop_pc@8
_PowerSetTextColor_pc@8
_PowerSetTitle_pc@8
_PowerStopEvent@8
_PowerUpdateMenuItemName_pc@12
_Set_PowCkbtn_Check@8
_Set_PowCkbtn_TextPos@8
_Set_PowCombo_GotEditEvent@8
_Set_PowCombo_IMEMode@8
_Set_PowCombo_KillEditEvent@8
_Set_PowCombo_ReturnKeyEvent@8
_Set_PowCombo_Sort@8
_Set_PowCombo_Style@8
_Set_PowDate_Edge@8
_Set_PowDde_DataStyle@8
_Set_PowDde_FmtName@8
_Set_PowDde_ItmName@8
_Set_PowDde_SvcName@8
_Set_PowDde_TpcName@8
_Set_PowEdit_3D@8
_Set_PowEdit_Border@8
_Set_PowEdit_GotEditEvent@8
_Set_PowEdit_HScrollBar@8
_Set_PowEdit_HideSel@8
_Set_PowEdit_IMEMode@8
_Set_PowEdit_KillEditEvent@8
_Set_PowEdit_Limit@8
_Set_PowEdit_LimitValue@8
_Set_PowEdit_MultiLine@8
_Set_PowEdit_Password@8
_Set_PowEdit_PasswordChar@8
_Set_PowEdit_ReadOnly@8
_Set_PowEdit_ReturnKeyEvent@8
_Set_PowEdit_VScrollBar@8
_Set_PowFile_Arch@8
_Set_PowFile_Hidden@8
_Set_PowFile_Mask@8
_Set_PowFile_Normal@8
_Set_PowFile_ReadOnly@8
_Set_PowFile_System@8
_Set_PowImage_ImageName@12
_Set_PowImage_Kind@12
_Set_PowImage_Stretch@12
_Set_PowLabel_Alignment@12
_Set_PowLabel_Edge@8
_Set_PowLabel_Round@8
_Set_PowLabel_Transparent@8
_Set_PowLabel_VAlignment@12
_Set_PowList_DblClkKey@8
_Set_PowList_SelStyle@8
_Set_PowList_Sort@8
_Set_PowMeta_MetaName@12
_Set_PowPfkey_VKid@8
_Set_PowPsbtn_Default@8
_Set_PowRdbtn_Check@8
_Set_PowRdbtn_TextPos@8
_Set_PowRect_Edge@8
_Set_PowRect_Round@8
_Set_PowRect_TransParent@8
_Set_PowSound_SoundName@8
_Set_PowTimer_Activate@8
_Set_PowTimer_Interval@8
_Set_PowhScrl_LargeStep@8
_Set_PowhScrl_Pos@8
_Set_PowhScrl_Range@12
_Set_PowhScrl_SmallStep@8
_Set_PowvScrl_LargeStep@8
_Set_PowvScrl_Pos@8
_Set_PowvScrl_Range@12
_Set_PowvScrl_SmallStep@8
XPOWCIGETPRINTENABLE
XPOWCISETPRINTENABLE
XPOWCKBTNGETCHECK
XPOWCKBTNGETTEXTPOS
XPOWCKBTNSETCHECK
XPOWCKBTNSETTEXTPOS
XPOWCOMBOADDSELECT
XPOWCOMBOADDSTRING
XPOWCOMBOADDSTRING256
XPOWCOMBODELSTRING
XPOWCOMBOFINDSTRING
XPOWCOMBOGETCOUNT
XPOWCOMBOGETSELECT
XPOWCOMBOGETSELSTRING
XPOWCOMBOGETSELSTRING256
XPOWCOMBOGETSORT
XPOWCOMBOGETSTRING
XPOWCOMBOGETSTRING256
XPOWCOMBOINSERTSTRING
XPOWCOMBOOPENFILE
XPOWCOMBORESETCONTENT
XPOWCOMBOSAVEFILE
XPOWCOMBOSETSELECT
XPOWCOMBOSETSORT
XPOWCOMBOSUBTRACTSELECT
XPOWCSALARM
XPOWCSALARMDEFAULT
XPOWCSCALLDLLSHEET
XPOWCSCALLSHEET
XPOWCSCLOSEDLLSHEET
XPOWCSCLOSEMYSELF
XPOWCSCLOSESHEET
XPOWCSENDAPPLICATION
XPOWCSEXEC
XPOWCSEXECDEFAULT
XPOWCSGETCOMMANDLINE
XPOWCSGETCURSOR
XPOWCSGETICON
XPOWCSGETSCREENSIZES
XPOWCSMESSAGEBOX
XPOWCSMSGBOXDEFAULT
XPOWCSOPENDLLSHEET
XPOWCSOPENSHEET
XPOWCSREDRAWSHEET
XPOWCSSETCURSOR
XPOWCSSETICON
XPOWCSSHOWSHEET
XPOWCWADDFONTPOINTSIZE
XPOWCWADDFONTSIZE
XPOWCWGETBACKCOLOR
XPOWCWGETENABLE
XPOWCWGETFONTPOINTSIZE
XPOWCWGETFONTSIZE
XPOWCWGETFORECOLOR
XPOWCWGETITALIC
XPOWCWGETPOSITION
XPOWCWGETSTRIKE
XPOWCWGETTABSTOP
XPOWCWGETTEXT
XPOWCWGETTEXTCOLOR
XPOWCWGETTEXTN
XPOWCWGETUNDERLINE
XPOWCWGETVISIBLE
XPOWCWGETWEIGHT
XPOWCWSETBACKCOLOR
XPOWCWSETENABLE
XPOWCWSETFOCUS
XPOWCWSETFONTPOINTSIZE
XPOWCWSETFONTSIZE
XPOWCWSETFORECOLOR
XPOWCWSETITALIC
XPOWCWSETPOSITION
XPOWCWSETSTRIKE
XPOWCWSETTABSTOP
XPOWCWSETTEXT
XPOWCWSETTEXTCOLOR
XPOWCWSETUNDERLINE
XPOWCWSETVISIBLE
XPOWCWSETWEIGHT
XPOWCWSUBTRACTFONTPOINTSIZE
XPOWCWSUBTRACTFONTSIZE
XPOWDDEADVISE
XPOWDDECHANGEITEM
XPOWDDECLOSE
XPOWDDEEXEC
XPOWDDEEXECUTE
XPOWDDEEXECUTE1024
XPOWDDEEXECUTE2048
XPOWDDEEXECUTE3072
XPOWDDEEXECUTE4096
XPOWDDEEXECUTE512
XPOWDDEEXECUTE5120
XPOWDDEGETCBACKCALLSTYLE
XPOWDDEGETDATA
XPOWDDEGETDATALEN
XPOWDDEGETDATAOFFSET
XPOWDDEGETDATASTYLE
XPOWDDEGETFMTNAME
XPOWDDEGETITMNAME
XPOWDDEGETLINKSTYLE
XPOWDDEGETSVCNAME
XPOWDDEGETTIMEOUT
XPOWDDEGETTPCNAME
XPOWDDEHOTDATA
XPOWDDEINITIATE
XPOWDDEOPEN
XPOWDDEPOKE
XPOWDDEPOKE1
XPOWDDEPOKE4
XPOWDDEPOKE8
XPOWDDEREQUEST
XPOWDDESETCBACKCALLSTYLE
XPOWDDESETDATAOFFSET
XPOWDDESETDATASTYLE
XPOWDDESETFMTNAME
XPOWDDESETITMNAME
XPOWDDESETLINKSTYLE
XPOWDDESETSVCNAME
XPOWDDESETTIMEOUT
XPOWDDESETTPCNAME
XPOWDDETERMINATE
XPOWDDEUNADVISE
XPOWDIRADDSELECT
XPOWDIRGETCOUNT
XPOWDIRGETCWD
XPOWDIRGETSELECT
XPOWDIRGETSELSTRING
XPOWDIRGETSTRING
XPOWDIRSETPATH
XPOWDIRSETSELECT
XPOWDIRSUBTRACTSELECT
XPOWDRIVEADDSELECT
XPOWDRIVEGETCOUNT
XPOWDRIVEGETCWD
XPOWDRIVEGETSELECT
XPOWDRIVEGETSELSTRING
XPOWDRIVEGETSTRING
XPOWDRIVESETPATH
XPOWDRIVESETSELECT
XPOWDRIVESUBTRACTSELECT
XPOWEDITADDFIRSTLINE
XPOWEDITADDLIMIT
XPOWEDITGETBORDER
XPOWEDITGETCARETPOS
XPOWEDITGETFIRSTLINE
XPOWEDITGETLIMIT
XPOWEDITGETLINEBREAK
XPOWEDITGETLINECOUNT
XPOWEDITGETLINETEXT
XPOWEDITGETLINETEXTN
XPOWEDITGETMODIFY
XPOWEDITGETMULTILINE
XPOWEDITGETMULTITEXT
XPOWEDITGETMULTITEXT16
XPOWEDITGETMULTITEXT8
XPOWEDITGETMULTITEXTN
XPOWEDITGETMULTITEXTN16
XPOWEDITGETMULTITEXTN8
XPOWEDITGETREADONLY
XPOWEDITGETSEL
XPOWEDITGETTEXT
XPOWEDITGETTEXTN
XPOWEDITOPENFILE
XPOWEDITSAVEFILE
XPOWEDITSCROLL
XPOWEDITSETBORDER
XPOWEDITSETCARETPOS
XPOWEDITSETFIRSTLINE
XPOWEDITSETLIMIT
XPOWEDITSETLINEBREAK
XPOWEDITSETLINETEXT
XPOWEDITSETLINETEXTN
XPOWEDITSETMODIFY
XPOWEDITSETMULTILINE
XPOWEDITSETMULTITEXT
XPOWEDITSETMULTITEXT16
XPOWEDITSETMULTITEXT8
XPOWEDITSETMULTITEXTN
XPOWEDITSETMULTITEXTN16
XPOWEDITSETMULTITEXTN8
XPOWEDITSETREADONLY
XPOWEDITSETSEL
XPOWEDITSETTEXT
XPOWEDITSETTEXTN
XPOWEDITSUBTRACTFIRSTLINE
XPOWEDITSUBTRACTLIMIT
XPOWERENDAPPLICATION
XPOWFILEADDSELECT
XPOWFILEGETARCH
XPOWFILEGETATTR
XPOWFILEGETCOUNT
XPOWFILEGETCWD
XPOWFILEGETHIDDEN
XPOWFILEGETMASK
XPOWFILEGETNORMAL
XPOWFILEGETREADONLY
XPOWFILEGETSELECT
XPOWFILEGETSELSTRING
XPOWFILEGETSTRING
XPOWFILEGETSYSTEM
XPOWFILESETARCH
XPOWFILESETATTR
XPOWFILESETHIDDEN
XPOWFILESETMASK
XPOWFILESETNORMAL
XPOWFILESETPATH
XPOWFILESETREADONLY
XPOWFILESETSELECT
XPOWFILESETSYSTEM
XPOWFILESUBTRACTSELECT
XPOWGETFILENAME
XPOWHSCRLADDLARGESTEP
XPOWHSCRLADDMAX
XPOWHSCRLADDMIN
XPOWHSCRLADDPOS
XPOWHSCRLADDSMALLSTEP
XPOWHSCRLGETLARGESTEP
XPOWHSCRLGETMAX
XPOWHSCRLGETMIN
XPOWHSCRLGETPOS
XPOWHSCRLGETSMALLSTEP
XPOWHSCRLSETLARGESTEP
XPOWHSCRLSETMAX
XPOWHSCRLSETMIN
XPOWHSCRLSETPOS
XPOWHSCRLSETSMALLSTEP
XPOWHSCRLSUBTRACTLARGESTEP
XPOWHSCRLSUBTRACTMAX
XPOWHSCRLSUBTRACTPOS
XPOWHSCRLSUBTRACTSMALLSTEP
XPOWIMAGEGETBORDER
XPOWIMAGEGETFORMAT
XPOWIMAGEGETIMAGENAME
XPOWIMAGEGETKIND
XPOWIMAGEGETPOINT
XPOWIMAGEGETSTRETCH
XPOWIMAGESETBORDER
XPOWIMAGESETFORMAT
XPOWIMAGESETIMAGENAME
XPOWIMAGESETKIND
XPOWIMAGESETPOINT
XPOWIMAGESETSTRETCH
XPOWLABELADDROUND
XPOWLABELGETALIGNMENT
XPOWLABELGETBORDER
XPOWLABELGETROUND
XPOWLABELGETTRANSPARENT
XPOWLABELSETALIGNMENT
XPOWLABELSETBORDER
XPOWLABELSETROUND
XPOWLABELSETTRANSPARENT
XPOWLABELSUBTRACTROUND
XPOWLISTADDSELECT
XPOWLISTADDSTRING
XPOWLISTADDSTRING256
XPOWLISTDELSTRING
XPOWLISTFINDSTRING
XPOWLISTGETCOUNT
XPOWLISTGETSELECT
XPOWLISTGETSELFLAG
XPOWLISTGETSELSTRING
XPOWLISTGETSELSTRING256
XPOWLISTGETSORT
XPOWLISTGETSTRING
XPOWLISTGETSTRING256
XPOWLISTINSERTSTRING
XPOWLISTOPENFILE
XPOWLISTRESETCONTENT
XPOWLISTSAVEFILE
XPOWLISTSETSELECT
XPOWLISTSETSELFLAG
XPOWLISTSETSORT
XPOWLISTSUBTRACTSELECT
XPOWMCICLOSEDEVICE
XPOWMCIGETSTATUSLENGTH
XPOWMCIGETSTATUSPOSITION
XPOWMCIGETTIMEFORMAT
XPOWMCIOPENDEVICE
XPOWMCIPAUSE
XPOWMCIPLAY
XPOWMCIRECEIVESTRING
XPOWMCIRESUME
XPOWMCISEEK
XPOWMCISENDSTRING
XPOWMCISETDEVICETYPE
XPOWMCISETELEMENT
XPOWMCISETTIMEFORMAT
XPOWMCISTOP
XPOWMENUGETCHECK
XPOWMENUGETENABLE
XPOWMENUGETMENUBREAK
XPOWMENUGETTEXT
XPOWMENUGETTEXTN
XPOWMENUGETVISIBLE
XPOWMENUSETCHECK
XPOWMENUSETENABLE
XPOWMENUSETMENUBREAK
XPOWMENUSETTEXT
XPOWMENUSETVISIBLE
XPOWMETAGETBORDER
XPOWMETAGETMETANAME
XPOWMETASETBORDER
XPOWMETASETMETANAME
XPOWPAUSEANIME
XPOWPICGETALPHANUMERIC
XPOWPICGETNATIONAL
XPOWPICGETNUMERIC
XPOWPICSETALPHANUMERIC
XPOWPICSETNATIONAL
XPOWPICSETNUMERIC
XPOWPIDATADDROUND
XPOWPIDATGETALIGNMENT
XPOWPIDATGETBORDER
XPOWPIDATGETDATE
XPOWPIDATGETROUND
XPOWPIDATGETSTYLE
XPOWPIDATGETTRANSPARENT
XPOWPIDATSETALIGNMENT
XPOWPIDATSETBORDER
XPOWPIDATSETDATE
XPOWPIDATSETROUND
XPOWPIDATSETSTYLE
XPOWPIDATSETTRANSPARENT
XPOWPIDATSUBTRACTROUND
XPOWPLAYANIME
XPOWPSBTNGETDEFAULT
XPOWPSBTNSETDEFAULT
XPOWRDBTNGETCHECK
XPOWRDBTNGETTEXTPOS
XPOWRDBTNSETCHECK
XPOWRDBTNSETTEXTPOS
XPOWRECTADDROUND
XPOWRECTGETBORDER
XPOWRECTGETROUND
XPOWRECTGETTRANSPARENT
XPOWRECTSETBORDER
XPOWRECTSETROUND
XPOWRECTSETTRANSPARENT
XPOWRECTSUBTRACTROUND
XPOWSOUNDGETSOUNDNAME
XPOWSOUNDPLAY
XPOWSOUNDSETSOUNDNAME
XPOWTABLEGETALPHANUMERIC
XPOWTABLEGETALPHANUMERICAT
XPOWTABLEGETALPHANUMERICFROM
XPOWTABLEGETCLICKCOL
XPOWTABLEGETCLICKROW
XPOWTABLEGETCOL
XPOWTABLEGETCOLCAPTION
XPOWTABLEGETCOLENABLE
XPOWTABLEGETCOLS
XPOWTABLEGETCOLTEXTPOS
XPOWTABLEGETCOLWIDTH
XPOWTABLEGETNATIONAL
XPOWTABLEGETNATIONALAT
XPOWTABLEGETNATIONALFROM
XPOWTABLEGETNUMERIC
XPOWTABLEGETNUMERICAT
XPOWTABLEGETNUMERICFROM
XPOWTABLEGETROW
XPOWTABLEGETROWCAPTION
XPOWTABLEGETROWS
XPOWTABLEGETSELECTCELLRECT
XPOWTABLESELECTCELLRECT
XPOWTABLESETALPHANUMERIC
XPOWTABLESETALPHANUMERICAT
XPOWTABLESETALPHANUMERICTO
XPOWTABLESETBACKCOLOR
XPOWTABLESETBACKCOLORRECT
XPOWTABLESETCELLBORDERRECT
XPOWTABLESETCOLCAPTION
XPOWTABLESETCOLENABLE
XPOWTABLESETCOLTEXTPOS
XPOWTABLESETCOLWIDTH
XPOWTABLESETEDITSEL
XPOWTABLESETNATIONAL
XPOWTABLESETNATIONALAT
XPOWTABLESETNATIONALTO
XPOWTABLESETNUMERIC
XPOWTABLESETNUMERICAT
XPOWTABLESETNUMERICTO
XPOWTABLESETROWCAPTION
XPOWTABLESETROWS
XPOWTABLESETSEL
XPOWTABLESETTEXTBKCOLOR
XPOWTABLESETTEXTBKCOLORRECT
XPOWTABLESETTEXTCOLOR
XPOWTABLESETTEXTCOLORRECT
XPOWTIMERADDINTERVAL
XPOWTIMERGETACTIVATE
XPOWTIMERGETINTERVAL
XPOWTIMERSETACTIVATE
XPOWTIMERSETINTERVAL
XPOWTIMERSUBTRACTINTERVAL
XPOWVSCRLADDLARGESTEP
XPOWVSCRLADDMAX
XPOWVSCRLADDMIN
XPOWVSCRLADDPOS
XPOWVSCRLADDSMALLSTEP
XPOWVSCRLGETLARGESTEP
XPOWVSCRLGETMAX
XPOWVSCRLGETMIN
XPOWVSCRLGETPOS
XPOWVSCRLGETSMALLSTEP
XPOWVSCRLSETLARGESTEP
XPOWVSCRLSETMAX
XPOWVSCRLSETMIN
XPOWVSCRLSETPOS
XPOWVSCRLSETSMALLSTEP
XPOWVSCRLSUBTRACTLARGESTEP
XPOWVSCRLSUBTRACTMAX
XPOWVSCRLSUBTRACTMIN
XPOWVSCRLSUBTRACTPOS
XPOWVSCRLSUBTRACTSMALLSTEP
_POWEROPENSHEET
fPowGraphUT_CalcGraphGeom
fPowGraphUT_ChangeNumData
fPowGraphUT_ChangeRange
fPowGraphUT_SetAxisval
ffar_atol
ffar_ltoa
_fxPowGraphGetClassHandle@0
_fxPowGraphWndProc@16
_xPowCaCheckItemName@8
_xPowCaCheckResName@8
_xPowCaEndApplication@4
_xPowCaFreeResource@12
_xPowCaGetAPPClassHandle@0
_xPowCaGetCaseSensitivity@8
_xPowCaGetCmdShow@4
_xPowCaGetCommandLine@4
_xPowCaGetDllInstance@4
_xPowCaGetMaxNameLen@8
_xPowCaGetPrimarySheet@4
_xPowCaGetPrimarySheetName@12
_xPowCaGetPrimarySheetNameLength@4
_xPowCaGetProfileStr@20
_xPowCaGetRunMode@4
_xPowCaIsSameName@16
_xPowCaLoadResource@16
_xPowCaMessageLoop@8
_xPowCaOverloadVF@12
_xPowCaPostMessageToApp@16
_xPowCaSendMessageToApp@16
_xPowCaSetProfileStr@16
_xPowCaTranslateMessage@8
_xPowCcGetCobolStrLength@8
_xPowCcMakeCStrFromCobol@12
_xPowCcMakeCobolStrFromC@16
_xPowCfGetControl@4
_xPowCfGetFUNDClassHandle@0
_xPowCfOverloadVF@12
_xPowCiGetApplication@4
_xPowCiGetCurrentSheetCursor@4
_xPowCiGetHandleInDlg@4
_xPowCiGetITEMClassHandle@0
_xPowCiGetItemID@4
_xPowCiGetItemProp@4
_xPowCiGetItemStyle@4
_xPowCiGetParent@4
_xPowCiGetPrintProp@8
_xPowCiGetPrintState@4
_xPowCiGetRunMode@4
_xPowCiGetWindow@4
_xPowCiIs3DEdge@4
_xPowCiIsGroupMark@4
_xPowCiIsTabStop@4
_xPowCiOverloadDefItemProp@8
_xPowCiOverloadDefItemStyle@8
_xPowCiOverloadVF@12
_xPowCiPrint@52
_xPowCiSetFocus@4
_xPowCiSetGroupMark@8
_xPowCiSetItemStyle@12
_xPowCiSetParent@8
_xPowCiSetPrintState@8
_xPowCiSetTabStop@8
_xPowCiSetWindow@8
_xPowCkbtnChildWndProc@16
_xPowCkbtnGetClassHandle@0
_xPowCkbtnWndProc@16
_xPowComboChildWndProc@16
_xPowComboEditWndProc@16
_xPowComboGetClassHandle@0
_xPowComboLBoxWndProc@16
_xPowComboWndProc@16
_xPowCsCloseSheet@4
_xPowCsEnumItem@12
_xPowCsExec@12
_xPowCsGetAccelHandle@4
_xPowCsGetAcrKeys@4
_xPowCsGetAcrTable@4
_xPowCsGetAcrkeyfunc@4
_xPowCsGetCursorHandle@4
_xPowCsGetCursorName@12
_xPowCsGetDefButton@4
_xPowCsGetHStep@4
_xPowCsGetHorizontalMaxItem@4
_xPowCsGetHorizontalMinItem@4
_xPowCsGetIconHandle@4
_xPowCsGetIconName@12
_xPowCsGetMenu@4
_xPowCsGetMenuKick@4
_xPowCsGetMenuPowObjasDes@4
_xPowCsGetMenuPowObjasRun@8
_xPowCsGetPF@4
_xPowCsGetRootMenuHPOWOBJ@4
_xPowCsGetSHEETClassHandle@0
_xPowCsGetScreenSize@8
_xPowCsGetVStep@4
_xPowCsGetVerticalMaxItem@4
_xPowCsGetVerticalMinItem@4
_xPowCsGethMenu@4
_xPowCsIsGrouped@8
_xPowCsIsModal@4
_xPowCsMessageBeep@8
_xPowCsPostMessageToSheet@16
_xPowCsRedrawMenu@8
_xPowCsRegisterDefButton@8
_xPowCsRegisterPF@12
_xPowCsRegisterRootMenu@20
_xPowCsSendMessageToSheet@16
_xPowCsSetAcrKeys@8
_xPowCsSetAcrkeyfunc@8
_xPowCsSetCursor@8
_xPowCsSetHStep@8
_xPowCsSetHorizontalMaxItem@8
_xPowCsSetHorizontalMinItem@8
_xPowCsSetIcon@8
_xPowCsSetMenu@8
_xPowCsSetVStep@8
_xPowCsSetVerticalMaxItem@8
_xPowCsSetVerticalMinItem@8
_xPowCsSethMenu@8
_xPowCsShowSheet@8
_xPowCwEnableWindow@8
_xPowCwGet3DStyle@4
_xPowCwGetBackBrush@8
_xPowCwGetBackBrushHandle@4
_xPowCwGetBackMode@4
_xPowCwGetBorder@4
_xPowCwGetCaption@12
_xPowCwGetCaptionLength@4
_xPowCwGetCaptionStatus@4
_xPowCwGetFont@8
_xPowCwGetFontHandle@4
_xPowCwGetForeColor@8
_xPowCwGetHelpHook@0
_xPowCwGetMapMode@8
_xPowCwGetPosition@8
_xPowCwGetPositionInPixel@8
_xPowCwGetStyle@8
_xPowCwGetTextColor@8
_xPowCwGetWNDClassHandle@0
_xPowCwIsClientRect@4
_xPowCwIsEnable@4
_xPowCwIsVisible@4
_xPowCwOverloadVF@12
_xPowCwReDraw@4
_xPowCwSet3DStyle@8
_xPowCwSetBackBrush@8
_xPowCwSetBackMode@8
_xPowCwSetBorder@8
_xPowCwSetCaption@8
_xPowCwSetCaptionStatus@8
_xPowCwSetClientRect@8
_xPowCwSetColorToDC@8
_xPowCwSetFont@8
_xPowCwSetForeColor@8
_xPowCwSetMapMode@12
_xPowCwSetPosition@8
_xPowCwSetPositionInPixel@8
_xPowCwSetStyle@12
_xPowCwSetTextColor@8
_xPowCwVisibleWindow@8
_xPowDDBToDIB@8
_xPowDIBNumColors@4
_xPowDIBToBitmap@8
_xPowDirChildWndProc@16
_xPowDirGetClassHandle@0
_xPowDirWndProc@16
_xPowDrawBtn3DGrayText@20
_xPowDrawBtn3DRect@48
_xPowDrawBtn3DRectBr@48
_xPowDrawBtn3DRectEx@32
_xPowDrawBtn3DRectPrint@56
_xPowDrawBtn3DRectPrintBr@56
_xPowDrawBtnGrayText@20
_xPowDrawBtnGrayTextProc@12
_xPowDriveChildWndProc@16
_xPowDriveGetClassHandle@0
_xPowDriveWndProc@16
_xPowEditChildWndProc@16
_xPowEditGetClassHandle@0
xPowEditMessage
_xPowEditOpenFile@8
_xPowEditSaveFile@8
_xPowEditScroll@12
_xPowEditWndProc@16
_xPowExecuteIPApplication@20
_xPowFileChildWndProc@16
_xPowFileGetClassHandle@0
_xPowFileWndProc@16
_xPowGetProcAddress@8
_xPowGroupGetClassHandle@0
_xPowGroupWndProc@16
_xPowIMEDlgGetMode@12
_xPowIMEDlgSetMode@12
_xPowIMESetConversionMode@20
_xPowImageGetClassHandle@0
_xPowLabelGetClassHandle@0
_xPowLabelMessage@8
_xPowListChildWndProc@16
_xPowListGetClassHandle@0
_xPowListOpenFile@8
_xPowListSaveFile@8
_xPowListWndProc@16
_xPowLoadDIBResource@8
_xPowMenuGetClassHandle@0
_xPowMetaGetClassHandle@0
_xPowMetaWndProc@16
_xPowOpenDIBFile@4
_xPowOpenDllSheet@12
_xPowPamPurgeAllApplication@8
_xPowPcmCheckClass@4
_xPowPcmCreateWindow@8
_xPowPcmGetClassData@8
_xPowPcmGetClassHandle@4
_xPowPcmGetClassName@12
_xPowPcmGetClassNameLength@4
_xPowPcmGetDesignServer@4
_xPowPcmGetRegisterInstance@4
_xPowPcmGetWindowClassInfo@8
_xPowPcmGetWindowClassName@12
_xPowPcmGetWindowClassNameLength@4
_xPowPcmIsDerivedClass@8
_xPowPcmRegisterPowerClass@4
_xPowPcmSetDesignServer@8
_xPowPcmUnregisterPowerClass@8
_xPowPfkeyChildWndProc@16
_xPowPfkeyGetClassHandle@0
xPowPfkeySearchVKid
_xPowPfkeyWndProc@16
_xPowPidatGetAlignment@4
_xPowPidatGetClassHandle@0
_xPowPidatGetRound@4
_xPowPidatGetStyle@4
_xPowPidatGetTransparent@4
_xPowPidatGetVAlignment@4
_xPowPidatSetAlignment@12
_xPowPidatSetRound@8
_xPowPidatSetStyle@8
_xPowPidatSetTransparent@8
_xPowPidatSetVAlignment@12
_xPowPkerAlign@8
_xPowPkerGetPowerRUNInfo@4
_xPowPkerGetPowerRUNInstance@0
_xPowPkerGetPowerRUNMode@0
_xPowPkerGetResourceDllInstance@0
_xPowPkerRegisterMonitor@4
_xPowPkerUnregisterMonitor@4
_xPowPkiGetSystemVersion@0
xPowPmbArgMsg
_xPowPmbArgMsgV@28
xPowPmbDbgMsg
_xPowPmbDbgMsgV@24
xPowPmbErrorBox
xPowPmbErrorBoxEx
xPowPmbMsgBox
_xPowPmbMsgBoxV@16
_xPowPmmAlloc@4
_xPowPmmFree@4
_xPowPmmGetGlobalHandle@4
_xPowPmmGetSize@4
_xPowPmmGlobalAlloc@4
_xPowPmmGlobalFree@4
_xPowPmmGlobalSize@4
_xPowPmmNoMemoryBox@4
_xPowPmmReAlloc@8
_xPowPomCheckObject@4
_xPowPomDestroy@8
_xPowPomGetClass@4
_xPowPomGetHPOWOBJ@4
_xPowPomGetIdentifier@12
_xPowPomGetIdentifierLength@4
_xPowPomGetInstance@4
_xPowPomGetObjectSize@4
_xPowPomGetProp@8
_xPowPomIsDerivedObject@8
_xPowPomMakeRecipe@8
_xPowPomNew@12
_xPowPomOpen@12
_xPowPomSetIdentifier@8
_xPowPrmChangeClassVersion@8
_xPowPrmWriteRecipe@12
_xPowPsbtnChildWndProc@16
_xPowPsbtnGetClassHandle@0
xPowPsbtnGetDefaultItem
xPowPsbtnSetReturnItem
_xPowPsbtnWndProc@16
_xPowRdbtnChildWndProc@16
_xPowRdbtnGetClassHandle@0
_xPowRdbtnWndProc@16
_xPowRectGetClassHandle@0
xPowRectMessage
_xPowRectWndProc@16
_xPowRunApplication@28
_xPowSoundGetClassHandle@0
_xPowSoundWndProc@16
_xPowStartApplication@16
_xPowTableGetClassHandle@0
_xPowTimerGetClassHandle@0
xPowTimerMessage
_xPowTimerWndProc@16
xPowhScrlMessage
_xPowhScrollChildWndProc@16
_xPowhScrollGetClassHandle@0
_xPowhScrollWndProc@16
xPowvScrlMessage
_xPowvScrollChildWndProc@16
_xPowvScrollGetClassHandle@0
_xPowvScrollWndProc@16


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #4
Antiguo 10 de septiembre de 2015, 16:56
IDENTIFICATION DIVISION
Eslopes
Guru de OO COBOL
ENVIRONMENT DIVISION
Avatar de Eslopes
DATA DIVISION
Forero desde (Registrado)agosto 2015
Brasil
Última Actividad11.05.2019 21:19
PROCEDURE DIVISION
PostsPosts: 66
Ha dicho GraciasEnviado: 17
Ha recibido agradecimientosRecibido: 29
Mejores respuestasSoluiones: 2
ReputaciónReputación: 7
Eslopes is on a distinguished road Eslopes is on a distinguished road Eslopes is on a distinguished road
Predeterminado

Olá,

ainda não está claro para mim como o PC3 vai reconhecer um novo OCB. Existe algum arquivo que indique que ele deve buscar o OCB quando estiver compilando ? Talvez um arquivo de propriedades.

Outra dúvida, os métodos abaixo não possuem relação com as propriedades definidas no OCB. A mim parece que isto significa que estes métodos são fixos na F5BBRUN2.DLL.

_xPowCkbtnChildWndProc@16
_xPowCkbtnGetClassHandle@0
_xPowCkbtnWndProc@16

Este métodos existem para os outros controles, sem que haja uma relação com os métodos descritos no OCB.

Vou montar um OCB e colocar aqui no ForoCobol, mas acho que não será de grande valia sem primeiro entendermos se é possível realmente estender o PC3 (o que seria muito legal).

Saludos, Emerson

PS: uma outra alternativa seria reescrever o PC3 em C# para o .Net. Levaria algum tempo, mas poderíamos corrigir estas deficiências
Eslopes no ha iniciado sesión   Responder Con Cita
  #5
Antiguo 10 de septiembre de 2015, 17:14
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 22:56
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

Eslopes, aún no sé dónde se registra la relación con los OCB, pero en algún lado la hay seguro, así que la encontraré. De momento no hace falta hacer muchos OCB-s, simplemente quería que alguien se familiarice con ello para que pueda hacerlo en el futuro.

En cuanto a las funciones "_xPowXXXXX@n" esto lo sabía. Pero no es un problema, porque podemos hacer una DLL intermediaria en C++, donde definiremos estas funciones y cargaremos la DLL del control en la DLL intermediaria.

Reescribir el compilador... Más bien el IDE... Me ha venido a la cabeza la idea, pero no sé cuanto tiempo nos va a costar hacerlo. Se podría aprovechar del compilador COBOL de Power3 y crear un nuevo IDE usando controles de MicroSoft, o BPL de Borland. El compilador de Power 9 compila TLB-s, pero no sé si tiene alguna obligación de ser TLB de ActiveX o cualquier TLB...


Total, que tu idea me parece buena, pero se necesitaría más gente, y buen conocimiento del tema, y del compilador en sí (porque crear nuevo compilador es demasiado complicado, se necesita mucho tiempo...).


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #6
Antiguo 10 de septiembre de 2015, 20:40
IDENTIFICATION DIVISION
Eslopes
Guru de OO COBOL
ENVIRONMENT DIVISION
Avatar de Eslopes
DATA DIVISION
Forero desde (Registrado)agosto 2015
Brasil
Última Actividad11.05.2019 21:19
PROCEDURE DIVISION
PostsPosts: 66
Ha dicho GraciasEnviado: 17
Ha recibido agradecimientosRecibido: 29
Mejores respuestasSoluiones: 2
ReputaciónReputación: 7
Eslopes is on a distinguished road Eslopes is on a distinguished road Eslopes is on a distinguished road
Predeterminado

Olá,

não é necessário fazer o compilador do zero. Existem pelo menos dois compiladores .net disponíveis (raincode e tomcat), além de que, o código do OpenCobol está disponível e pode (com mais esforço) ser recompilado para .Net.

A IDE poderia ser baseada em Eclipse (ou Netbeans, a qual eu prefiro). O maior esforço seria desenvolver um parser e o GUI Designer que funcione como o Power (um evento é tratado com código Cobol apenas).

Acho que podemos pelo menos gastar algum tempo estudando a idéia.

Saludos, Emerson
Eslopes no ha iniciado sesión   Responder Con Cita
  #7
Antiguo 10 de septiembre de 2015, 20:50
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 22:56
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

Eslopes, yo nunca he usado .NET así que no sé qué decirte en este caso. Yo preferiría en teoría BPL, o bibliotecas Win32 pero no un Framework. Pero bueno, es cuestion de verlo, en caso de .NET puede haber cosas que yo no sé y debería saberlas.

En cuanto al parser, creo que se podría hacer incluso en COBOL. El GUI Desinger ya va a ser dificil en COBOL, además no tengo ni idea de cómo se realizan...

Creo que de momento mejorar el Power3 podría ser un comienzo para que en el futuro podamos hacer un IDE nuevo. ¿Qué opinas?


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #8
Antiguo 10 de septiembre de 2015, 21:24
IDENTIFICATION DIVISION
Eslopes
Guru de OO COBOL
ENVIRONMENT DIVISION
Avatar de Eslopes
DATA DIVISION
Forero desde (Registrado)agosto 2015
Brasil
Última Actividad11.05.2019 21:19
PROCEDURE DIVISION
PostsPosts: 66
Ha dicho GraciasEnviado: 17
Ha recibido agradecimientosRecibido: 29
Mejores respuestasSoluiones: 2
ReputaciónReputación: 7
Eslopes is on a distinguished road Eslopes is on a distinguished road Eslopes is on a distinguished road
Predeterminado

Olá,

vou preparar alguns OCBs para o PC3 pois estou curioso para ver o que pode ser feito. Eu gostava muito do PC3 (usei em 1996 e 1997), especialmente pelo fato de que não precisava da instalação do runtime (como o power 4+) e pelo fato de que era muito rápido e adequado ao que eu precisava fazer naquela época. O problema é que o tempo passa e o PC3 ficou rapidamente defasado. O Power 4+ é praticamente outro produto. Graças ao uso de ActiveX e OO expandiu muito, mas também já ficou obsoleto. Voltar ao PC3, mas desta vez fazendo com que ele produza um código binário moderno, capaz de usar a vasta biblioteca de classes do .Net é algo que me atrai muito.

Saludos, Emerson
Eslopes no ha iniciado sesión   Responder Con Cita
  #9
Antiguo 10 de septiembre de 2015, 22:05
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 22:56
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

Eslopes, mi idea es que tengamos la posibilidad de hacer programas modernos precisamente portables! ActiveX necesita ser registrado con derechos de administrador, es lo que no me gusta de él. Pero no entiendo por qué dices que quedó obsoleto? Depende del tipo de aplicación que quieres desarrollar. También no sé qué ventajas aporta realmente el .NET en caso de aplicaciones business (que es lo que hacemos los coboleros).

Sincermanete, los controles de PC9 + algunos OCX de terceros yo he hecho aplicaciones muy modernas (viasualmente). No sé si es a la parte visual a lo que te refieres con obsoleto. Los IDE-s de Borland (ahora ya Embarcadero) son muy buenos, para mí son mejores que Visual Studio. Y las clases VCL son muchas y abordan todo lo que se puede necesitar. Además, todo va incluído en el *.EXE (linkeado), y no hay dependencia ninguna de Framework instalado. Creo que Objective Cobol estaba hecho con el IDE de Borland, no he conseguido descargarlo (no lo encuentro en ningun lado).

En definitiva, la idea para mi es modernizar y facilitar el GUI, manteniendo las ventajas de COBOL (ficheros RMKF indexados y etc), y que se compile en standalone executable con static run-time.
Imágenes Adjuntas
Tipo de Archivo: png 001.PNG (86,1 KB, 27 descargas)
Tipo de Archivo: png Incidencias.png (93,5 KB, 28 descargas)


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
  #10
Antiguo 10 de septiembre de 2015, 23:07
IDENTIFICATION DIVISION
Eslopes
Guru de OO COBOL
ENVIRONMENT DIVISION
Avatar de Eslopes
DATA DIVISION
Forero desde (Registrado)agosto 2015
Brasil
Última Actividad11.05.2019 21:19
PROCEDURE DIVISION
PostsPosts: 66
Ha dicho GraciasEnviado: 17
Ha recibido agradecimientosRecibido: 29
Mejores respuestasSoluiones: 2
ReputaciónReputación: 7
Eslopes is on a distinguished road Eslopes is on a distinguished road Eslopes is on a distinguished road
Predeterminado

Olá,

o que chamo de obsoleto:

1. Incapacidade de lidar com network (Web Services SOAP/REST, Sockets, Remote Method Invocation etc)
2. Dificuldade para lidar com XML (MSXML sofre do mal do chamado DLL Hell, diferentes versões na mesma máquina pelo Internet Explorer frequentemente entram em conflito e fazem aplicações pararem de funcionar)
3. Dificuldade de lidar como host de linguagens script (automação). Este recurso é simplesmente genial. Fiz um exemplo com PowerCOBOL e VBScript (Adding script support to PowerCobol applications
). Muita coisa é possível, mas é complicado passar objetos do Power para a linguagem script para que esta possa manipular o mesmo. Isto dificulta a implementação de Automation (criar Macros, por exemplo) que facilitam a vida do usuário
4. Dificuldade para lidar com mensageria (MSMQ). Não raro dependemos de bibliotecas de terceiros.
5. Impossibilidade de se criar modules/portlets para portais (ex: Dotnetnuke). Isto é uma fonte de frustração para mim, particularmente. Eu pretendia usar o DNN como estrutura de portal para aplicações Cobol para Web, mas não é possível com o Fujitsu Cobol for Windows.
6. Reutilização de componentes .Net (assinatura digital, grids inteligentes, gauges, componentes que consomem web services e um longo etc)
7. Uso do .Net Framework (runtime padrão Microsoft), que vem instalado nas versões do Windows desde o Vista/Windows 7.

Muitos OCXs não funcionam com o Power por causa das estruturas de dados usadas. Isto é eliminado no .Net.

É possível criar aplicações .Net para mobile (incluindo iOS e Android). A tecnologia do Power é Microsoft COM que só funciona no Windows.

Por fim, a class library built in do .Net economiza tempo e dinheiro. Além destas ainda existem as criadas e distribuídas pelos desenvolvedores:

Código:
Ajax

    Ajax Control Toolkit - Microsoft
    AJAXNet Pro
    ASP.NET MVC Project Awesome - a rich set of helpers (controls) that you can use to build highly responsive and interactive Ajax-enabled Web applications. These helpers include Autocomplete, AjaxDropdown, Lookup, Confirm Dialog, Popup Form and Pager. Thanks Omu (April 20, 2011)

Build Tools

    Prebuild - Generate project files for all VS version, including major IDE's and tools like SharpDevelop, MonoDevelop, NAnt and Autotools
    Genuilder - Precompiler which lets you transform your source code during the build. Thanks Harry McIntyre (April 13, 2011)

Charting/Graphics

    Microsoft Chart Controls for ASP.NET 3.5 SP1
    Microsoft Chart Controls for Winforms
    ZedGraph Charting
    NPlot - Charting for ASP.NET and WinForms
    Graph# - a graph layout framework contains some layout algorithms and a GraphLayout control for WPF applications. Thanks Florian Standhartinger (April 20, 2011)

Collections/Generics

    PowerCollections - is a library that provides generic collection classes that are not available in the .NET framework. Some of the collections included are the Deque, MultiDictionary, Bag, OrderedBag, OrderedDictionary, Set, OrderedSet, and OrderedMultiDictionary. Thanks Adam Ralph (April 20, 2011)

Compression

    SharpZipLib
    DotNetZip
    YUI Compressor (CSS and JS minification)
    AjaxMinifier (in other downloads) (CSS and JS minification. Also includes MSBuild task)
    SevenZipSharp to pack, unpack a lot of different packages (including RAR, 7ZIP, etc).
    ZipStorer A Pure C# Class to Store Files in Zip

Controls

    Krypton - Free winform controls. Link fixed (April 14, 2011)
    Source Grid - A Grid control
    DevExpress - Over 60 Free Controls from DevExpress. Thanks Florian Standhartinger (April 20, 2011)
    ObjectListView - is a C# wrapper around a .NET ListView. It makes the ListView much easier to use and provides some neat extra functionality. Thanks Florian Standhartinger (April 20, 2011)

Data Mapper

    XmlDataMapper
    AutoMapper
    Dapper
    Massive
    Mapper Extensions Thanks giometrix (April 14, 2011)
    Data accessors from the Data Access Application Block
    Value Injecter - ets you define your own convention-based matching algorithms (ValueInjections) in order to match up (inject) source values to destination values. Thanks Omu (April 20, 2011)

Dependency Injection/Inversion of Control

    Unity Framework - Microsoft
    StructureMap - Jeremy Miller
    Castle Windsor
    NInject
    Spring Framework
    Autofac
    Simple Service Locator
    Managed Extensibility Framework
    TinyIoC
    Funq - a high performance DI framework by eliminating all runtime reflection through the use of lambdas and generic functions as factories. Thanks Marcel Popescu (April 20, 2011).
    Munq - a very small, fast dependency injection container designed for ASP.NET applications, both Webforms and MVC. It has, by design, limited features. The main goal has been to minimize the CPU required for Resolving types from the container. Thanks Marcel Popescu (April 20, 2011).

Design by Contract

    Microsoft Code Contracts
    LinFu
    CuttingEdge.Conditions

IDE

    SharpDevelop - is a free IDE for C#, VB.NET and Boo projects. Thanks Florian Standhartinger (April 20, 2011).

Logging

    Logging Application Block - Microsoft
    Log4Net - Apache
    Error Logging Modules and Handlers(ELMAH)
    NLog
    CuttingEdge.Logging
    Logging Abstraction Api "Common.Logging"

ORM

    NHibernate and FluentNHibernate
    Castle ActiveRecord
    Subsonic
    XmlDataMapper
    Truss Data binding and real time property sync library

PDF Creators/Generators

    PDFsharp
    iTextSharp

Automated Web Testing

    Selenium
    Watin

Misc Testing/Qualitysupport/Behavoir Driven Development (BDD)

    Testdatagenerator NBuilder
    BDD StoryQ
    BDD specflow

URL Rewriting

    url rewriter
    UrlRewriting.Net
    Url Rewriter and Reverse Proxy - Managed Fusion/Nick Berardi

MS Word/Excel Documents Manipulation

    DocX to create, read, manipulate formatted word documents. Easy syntax, working nicely, actively developed. No Microsoft Office necessary.
    Excel XML Writer allows creation of .XLS (Excel) files. No Microsoft Office necessary. Been a while since it has been updated. It also provides code generator to create code from already created XLS file (saved as xml). Haven't tested this but looks very promising. Too bad author is long time gone.
    Excel Reader allows creation/reading of .XLS (Excel) files. No Microsoft Office necessary. Been a while since it has been updated.
    Excel Package allows creation/reading of .XLSX (Excel 2007) files. No Microsoft Office necessary. Author is gone so it's out of date.
    EPPlus is based on Excel Package and allows creation/reading of .XLSX (Excel 2007). It is actually the most advanced even comparing to NPOI.
    NPOI is the .NET version of POI Java project at Apache POI - the Java API for Microsoft Documents. POI is an open source project which can help you read/write xls, doc, ppt files.
    sharp2word - a Word 2003 XML Documents Generator from C# code without any components or libraries. Thanks dublicator (April 20, 2011)
    ClosedXML - an actively developed library for generating OpenXML Excel files. Thanks Joseph Robichaud (April 26, 2011)

Serialization

    sharpserializer - xml/binary serializer for wpf, asp.net and silverlight
    Protobuf.NET - fastest serialization port protobuf format into .NET platform. Thanks slava pocheptsov (April 26, 2011)

Silverlight

    Silverlight Toolkit

Social Media

    LinqToTwitter - Linq-based wrapper for all Twitter API functionality in C#
    Facebook C# SDK - A toolkit for creating facebook applications / integrating websites with Facebook using the new Graph API or the old rest API.

Package managers for external libraries

    NuGet (formerly known as NuPack) - Microsoft (developer-focused package management system for the .NET platform intent on simplifying the process of incorporating third party libraries into a .NET application during development)
    OpenWrap - Sebastien Lambla - Open Source Dependency Manager for .net applications

Unit Testing/Mocking

    NUnit
    Rhino Mocks
    Moq
    TypeMock.Net
    xUnit.net
    Gallio/MbUnit
    Machine.Specifications
    fakeiteasy - a .Net dynamic fake framework for creating all types of fake objects, mocks, stubs etc. Thanks Omu (April 20, 2011)
    NSubstitute - a A friendly substitute for .NET mocking frameworks. Thanks xerxesb (May 10, 2011)
    Shouldly - How asserting should be. Thanks xerxesb (May 10, 2011)

Validation

    Validation Application Block - Microsoft
    xVal
    Fluent Validation

Threading

    Smart Thread Pool - Thread Pool management library
    Retlang - a high performance C# threading library. Thanks MarcBot (April 13, 2011)
    bbv.Common - an open source library of software components that makes building multi-threaded, event-based and loosely coupled systems easy. Thanks Urs Enzler (April 14, 2011)
    PowerThreading - a llibrary (DLL) containing many classes to help with threading and asynchronous programming. Thanks Adam Ralph (April 20, 2011)

Unclassified

    CSLA Framework - Business Objects Framework
    AForge.net - AI, computer vision, genetic algorithms, machine learning
    Prism - Composit UI application block for WPF, Silverlight and WP7 - Microsoft patterns & practices
    Enterprise Library 5.0 - Logging, Exception Management, Caching, Cryptography, Data Access, Validation, Security, Policy Injection - Microsoft patterns & practices
    File helpers library
    C5 Collections - Collections for .NET
    Quartz.NET - Enterprise Job Scheduler for .NET Platform
    MiscUtil - Utilities by Jon Skeet
    Noda Time - DateTime replacement (idomatic port of Joda Time from Java)
    Lucene.net - Text indexing and searching
    Json.NET - Linq over JSON
    Flee - expression evaluator
    PostSharp - AOP
    IKVM - brings the extensive world of Java libraries to .NET.
    C# Webserver - Embeddable webserver
    Long Path - Microsoft
    .NET Engines for the GOLD Parsing System
    NCQRS - library for event-driven architectures (CQRS).
    Reactive Extensions for .NET - a library for composing asynchronous and event-based programs using observable collections. Thanks steve (April 14, 2011)
    Mono.GameMath - a project to develop a highly-performant math library for games, based on XNA APIs. Thanks Alex Rønne Petersen (April 14, 2011)
    SLSharp - a runtime IL-to-GLSL translation engine, allowing people to write GLSL shaders as C# code. Thanks Alex Rønne Petersen (April 14, 2011)
    InfusionSoftDotNet - a dll to ease the pain for .Net developers to access the InfusionSoft API. Thanks Michael Gibbs (April 20, 2011)
    re-mix - provides mixins for C# and Visual Basic .NET. Thanks Stefan Papp (April 20, 2011)
    Mono.Cecil - a library written by Jb Evain to generate and inspect programs and libraries in the ECMA CIL format. It has full support for generics, and support some debugging symbol format. Thanks Florian Standhartinger (April 20, 2011)
    ImapX - is an modern .NET 2.0 library for management of IMAP folders, supports SSL Connection and different IMAP formats, such as Gmail IMAP, AOL IMAP (November 30, 2011)

Qink | Free .NET Libraries
Saludos, Emerson
Eslopes no ha iniciado sesión   Responder Con Cita
Respuesta

Tags
controles powercobol 3


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado



La franja horaria es GMT +1. Ahora son las 08:44.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2019, Jelsoft Enterprises Ltd.