To Antonio: Harbour OLE implementation

Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Re: To Antonio: Harbour OLE implementation

Post by Rossine »

Hello Toninho,

Many thank´s for the sample :D

Why me out of the application is returned a error GPF ?

It can post the example "c:\fwh\samples\webexp.prg" working with WIN_AxInit() / WIN_AxGetControlas() ?
Obrigado, Regards, Saludos

Rossine.

xHarbour comercial (xAcc) -> Testando harbour + bcc / msvc
fwh 9.05
Windows XP SP2
toninhofwi
Posts: 161
Joined: Tue Oct 18, 2005 10:01 am

Re: To Antonio: Harbour OLE implementation

Post by toninhofwi »

Hi Rossine,

I´m discussing the GPF problem in Habrour dev list now.

I don´t know why it gpf...


Regards,

Toninho.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: To Antonio: Harbour OLE implementation

Post by Antonio Linares »

It seems to me as the current SVN Harbour OleAuto code is broken.

FiveTech Harbour build is working fine :-)
www.fivetechsoft.com/files/harbour.exe
regards, saludos

Antonio Linares
www.fivetechsoft.com
Sheng
Posts: 15
Joined: Mon Sep 29, 2008 1:41 pm

Re: To Antonio: Harbour OLE implementation

Post by Sheng »

toninhofwi wrote:This works:
               _hInstance,
Toninho.
You are lost "_hInstance" same as Harbour-mail-list. :?:
toninhofwi
Posts: 161
Joined: Tue Oct 18, 2005 10:01 am

Re: To Antonio: Harbour OLE implementation

Post by toninhofwi »

Sheng wrote:
toninhofwi wrote:This works:
               _hInstance,
Toninho.
You are lost "_hInstance" same as Harbour-mail-list. :?:
No, it is a "working in progress", now Harbour have fully support for it and the GPF was fixed.

This is a working sample:

Code: Select all

   #include "winapi.ch"
   local oWindow, oActiveX
   DEFINE WINDOW oWindow FROM 0,0 to 400,300 TITLE "Flash Player"
   WIN_AxInit()
   oActiveX = WIN_AxGetControl( WApi_CreateWindowEX( 0, "AtlAxWin", "ShockwaveFlash.ShockwaveFlash.1", nOR( WS_CHILD, WS_VISIBLE ), 0, 0, 200, 200, win_N2P( oWindow:hWnd ), 0 ), nil )
   ACTIVATE WINDOW oWindow ON INIT oActiveX : LoadMovie( 0, "c:\flash.swf" )
Regards,

Toninho.
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Re: To Antonio: Harbour OLE implementation

Post by Rossine »

Hello,
No, it is a "working in progress", now Harbour have fully support for it and the GPF was fixed.
Great news Toninho :D

Now no longer occurs error GPF :D

It can show me how this example of fivewin (webexp.prg) turn with activex of harbour ? See the code below:

Code: Select all

#include "FiveWin.ch"

function Main()

   local oWnd, oActiveX
   local cEvents := ""

   DEFINE WINDOW oWnd TITLE "FiveWin ActiveX Support"

   oActiveX = TActiveX():New( oWnd, "Shell.Explorer" )

   oWnd:oClient = oActiveX // To fill the entire window surface

   oActiveX:Do( "Navigate", "http://www.google.com.br" )

   oActiveX:SetProp( "StatusBar", .t. )
   
   // MsgInfo( oActiveX:GetProp( "StatusBar" ) )

   oActiveX:bOnEvent = { | event, aParams, pParams | cEvents += EventInfo( event, aParams, pParams, oActiveX ) }

   ACTIVATE WINDOW oWnd ;
      VALID ( MemoEdit( cEvents ), .t. )
      
return nil

function EventInfo( event, aParams, pParams, oActiveX )

   local cMsg := "Event: " + cValToChar( event ) + CRLF
   local n
   
   cMsg += "Params: " + CRLF
   
   for n = 1 to Len( aParams )
      cMsg += cValToChar( aParams[ n ] ) + CRLF
   next

   if event == "BeforeNavigate2"
      // MsgInfo( aParams[ 2 ] )
      // SetEventParam( pParams, 7, .t. ) // Comment this to allow navigation
   endif

return cMsg + CRLF
 
Thank you for your support :D :D :D
Obrigado, Regards, Saludos

Rossine.

xHarbour comercial (xAcc) -> Testando harbour + bcc / msvc
fwh 9.05
Windows XP SP2
toninhofwi
Posts: 161
Joined: Tue Oct 18, 2005 10:01 am

Re: To Antonio: Harbour OLE implementation

Post by toninhofwi »

Hi Rossine.

Now that all is working, Antonio need to change FWH TActiveX class to support new Harbour ActiveX/Ole functions, to provide backward compatibility.

Regards,

Toninho.
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Re: To Antonio: Harbour OLE implementation

Post by Rossine »

OK Toninho, thank´s :D

Antonio, could adjust fwh you work with the activex harbour ?
Obrigado, Regards, Saludos

Rossine.

xHarbour comercial (xAcc) -> Testando harbour + bcc / msvc
fwh 9.05
Windows XP SP2
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: To Antonio: Harbour OLE implementation

Post by Antonio Linares »

Rossine, Toninho,

Are ActiveX events working on the Harbour new build ?
if not, then we can't use it.

ActiveX events are fully supported in FWH Class TActiveX
regards, saludos

Antonio Linares
www.fivetechsoft.com
toninhofwi
Posts: 161
Joined: Tue Oct 18, 2005 10:01 am

Re: To Antonio: Harbour OLE implementation

Post by toninhofwi »

Antonio Linares wrote:Are ActiveX events working on the Harbour new build ?
Hi Antonio.

Yes it have, and I confirm it with Mindaugas, pleaser look:

Code: Select all

   #include "winapi.ch"
   local oWindow, oActiveX
   DEFINE WINDOW oWindow FROM 0,0 to 400,300 TITLE "Google"
   WIN_AxInit()
   oActiveX = WIN_AxGetControl( WApi_CreateWindowEX( 0, "AtlAxWin", "Shell.Explorer", nOR( WS_CHILD, WS_VISIBLE ), 0, 0, 200, 200, win_N2P( oWindow:hWnd ), 0 ), @LogFunc() )
   ACTIVATE WINDOW oWindow ON INIT oActiveX:Navigate( "http://www.google.com" )

Code: Select all

static procedure LogFunc( ... )
   local aParam := {...}
   AEval( aParam, { |x,y| IIf( ValType( x ) == "O", aParam[ y ] := "O:" + x:ClassName, nil ) } )
   LogToFile( Time() + " " + HB_VALTOEXP( aParam ) )
return

Regards,

Toninho.
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Re: To Antonio: Harbour OLE implementation

Post by Rossine »

Hello Toninho,
Yes it have, and I confirm it with Mindaugas, pleaser look:
Great news. :D
#include "fivewin.ch"

function MAIN

local oWindow, oActiveX

DEFINE WINDOW oWindow FROM 0,0 to 400,300 TITLE "Google"

WIN_AxInit()

oActiveX = WIN_AxGetControl( WApi_CreateWindowEX( 0, "AtlAxWin", "Shell.Explorer", nOR( WS_CHILD, WS_VISIBLE ), 0, 0, 200, 200, win_N2P( oWindow:hWnd ), 0 ), @LogFunc() )

ACTIVATE WINDOW oWindow ON INIT oActiveX:Navigate( "http://www.google.com" )

return NIL

static procedure LogFunc( ... )
local aParam := {...}
AEval( aParam, { |x,y| IIf( ValType( x ) == "O", aParam[ y ] := "O:" + x:ClassName, nil ) } )
msgstop( Time() + " " + HB_VALTOEXP( aParam ) )
* LogToFile( Time() + " " + HB_VALTOEXP( aParam ) )
return
This works well. :D

Thank you very much :D
Last edited by Rossine on Wed Jun 17, 2009 7:41 pm, edited 1 time in total.
Obrigado, Regards, Saludos

Rossine.

xHarbour comercial (xAcc) -> Testando harbour + bcc / msvc
fwh 9.05
Windows XP SP2
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Re: To Antonio: Harbour OLE implementation

Post by Rossine »

Hello Toninho,

The sample using codejock, generate GPF:
Application Internal Error - C:\test\CODEJ.exe
Terminated at: 2009.06.17 16:35:38
Unrecoverable error 6005: Exception error:

Exception Code:C0000027
Exception Address:7C80DEAC
EAX:00000000 EBX:00000000 ECX:00000000 EDX:00000000
ESI:00000000 EDI:00000000 EBP:0012DC58
CS:EIP:001B:7C80DEAC SS:ESP:0023:0012DC48
DS:0023 ES:3B0023 FS:003B GS:0000
Flags:00000202
CS:EIP: 5D 5F 5E 5B 8B E5 5D C3 8B 4C 24 04 F7 41 04 06
SS:ESP: 0012DC58 7C816FF0 00000000 0012FFE0 0012DC7C 7C839B65 0012FFE0 0012DC7C 00000000 00000000 00000000 0012DD68 0012DD80 0012DCA0 7C9032A8 0012DD68

C stack:
EIP: EBP: Frame: OldEBP, RetAddr, Params...
7C80DEAC 0012DC58 0012DC7C 7C839B65 0012FFE0 0012DC7C 00000000 00000000 00000000 0012DD68 0012DD80
7C839B65 0012DC7C 0012DCA0 7C9032A8 0012DD68 0012FFE0 0012DD80 0012DD3C 0012E184 7C9032BC 0012FFE0
7C9032A8 0012DCA0 0012DD50 7C90327A 0012DD68 0012FFE0 0012DD80 0012DD3C 7C839AF0 00000001 0012DD68 0012FFE0
7C90327A 0012DD50 0012E058 7C90E48A 00000000 0012DD80 0012DD68 0012DD80 C0000090 00000000 00000000 77C2FA29
7C90E48A 0012E058 0012E0F0 10110443 40000000 47C6D096 101104C1 7E3684B2 0012E0F0 0012E0F8 0012E0FC 0012E0F4
10110443 0012E0F0 0012E190 73D8DA0E 001D08DA 00000362 73D8DA1A 00000001 0012E410 73D8D9C7 0012E410 00000000

...


Modules:

Called from WAPI_CREATEWINDOWEX(0)
Called from MAIN(58) in CODEJ.prg
The sample:

Code: Select all

#include "FiveWin.ch"
 
#define xtpControlError              0
#define xtpControlButton             1
#define xtpControlPopup              2
#define xtpControlButtonPopup        3
#define xtpControlSplitButtonPopup   4
#define xtpControlComboBox           5
#define xtpControlEdit               6
#define xtpControlCustom             7
#define xtpControlLabel              8
#define xtpControlCheckBox           9
#define xtpControlGallery           10
#define xtpControlRadioButton       11
 
#define xtpImageNormal               0
#define xtpImageDisabled             1
#define xtpImageHot                  2
#define xtpImageChecked              3
#define xtpImagePressed              4
 
 
function Main()  
      
   local oWnd, oAct 
   
   local oRb
   local oQA, oQBtn1, oQBtn2, oQBtn3 
   local oSysButton, oControl, oPopupBar  
   
   local oStatusBar, oToolTipContext, oIcons
   local oTabFiles, oGroup1
   local oTabEdit, oGroup2
   local oTabBuild
   
   local aButtons := {} 
   local oButton1, oButton2, oButton3, oButton4
   local oExitBtn, oExitBtn2
   local oBmp1, oBmp2, oBmp3, obmp4, obmp5, obmp6, obmp7, obmp8, obmp9
   local oAct2

   DEFINE WINDOW oWnd TITLE "FWH Support Codejock ActiveX"

   WIN_AxInit()

   oBmp1 := TBitmap():Define( , "\fwh\bitmaps\16x16\new2.bmp", oWnd )
   oBmp2 := TBitmap():Define( , "\fwh\bitmaps\16x16\open2.bmp", oWnd ) 
   oBmp3 := TBitmap():Define( , "\fwh\bitmaps\alphabmp\explorer.bmp", oWnd )     
   oBmp4 := TBitmap():Define( , "\fwh\bitmaps\32x32\open.bmp", oWnd ) 
   oBmp5 := TBitmap():Define( , "\fwh\bitmaps\32x32\people.bmp", oWnd ) 
   oBmp6 := TBitmap():Define( , "\fwh\bitmaps\32x32\keys.bmp", oWnd ) 
   oBmp7 := TBitmap():Define( , "\fwh\bitmaps\32x32\quit.bmp", oWnd ) 
   oBmp8 := TBitmap():Define( , "\fwh\bitmaps\16x16\copy.bmp", oWnd )
   oBmp9 := TBitmap():Define( , "\fwh\bitmaps\16x16\info.bmp", oWnd )
   
*  oAct := TActiveX():New( oWnd, "Codejock.CommandBarsFrame.13.0.0", 0, 0, 0, 0 )  

   oAct := WIN_AxGetControl( WApi_CreateWindowEX( 0, "AtlAxWin", "Codejock.CommandBarsFrame.13.0.0", nOR( WS_CHILD, WS_VISIBLE ), 0, 0, 600, 500, win_N2P( oWnd:hWnd ), 0 ) )
   

    oAct2 := CreateObject("Codejock.CommandbarsGlobalSettings.13.0.0")
  
    WiTH OBJECT oAct2
         :License:= "CommandBars Control Copyright (c) " + ;
         "2003-2006 Codejock Software" +CRLF+ "PRODUCT-ID: " + ;
         "XCB-ESD-ACTX-9600" + CRLF + "VALIDATE-CODE: XXX-XXX-XXX-XXX"
    END WITH
 
*oSettings := oAct2:GetProp( "GlobalSettings" )

   MsgInfo( oAct2:License )
   MsgInfo( oAct2:version)

   oAct:bOnEvent = { | cEvent, aParams, pParams | RibbonBarEvent( cEvent, aParams, pParams, aButtons, oWnd ) }
 
   oAct:Do( "AttachToWindow", oWnd:hWnd )
   
   oAct:Do( "EnableOffice2007Frame", .T. )
   oAct:Do( "VisualTheme", .T. )
 
           
   // ToolTipContext - Richard          
   oToolTipContext := TOleAuto():New( ActXPdisp( oAct:hActiveX ) )
   oToolTipContext := oToolTipContext:ToolTipContext()
   oToolTipContext:Style = 5  && xtpToolTipOffice2007
   oToolTipContext:ShowTitleAndDescription( .T., 0 )
   oToolTipContext:ShowImage( .T., 0 )
   oToolTipContext:SetMargin( 2, 2, 2, 2 )
   oToolTipContext:MaxTipWidth = 180
   
   // StatusBar-Richard
   oStatusBar := TOleAuto():New( ActXPdisp( oAct:hActiveX ) )
   oStatusBar:StatusBar:Visible = .T.
 
   oStatusBar:StatusBar:AddPane( 0 )
   oStatusBar:StatusBar:AddPane( 59137 )
   oStatusBar:StatusBar:AddPane( 59138 )
   oStatusBar:StatusBar:AddPane( 59139 )  
   oStatusBar:StatusBar:IdleText = "FWH support Codejock RibbonBar"       
   
   oIcons := oAct:Do( "icons" )  
   
   oIcons:AddBitmap( oBmp1:hBitmap,1,xtpImageNormal,.f. ) 
   oIcons:AddBitmap( oBmp2:hBitmap,2,xtpImageNormal,.f. ) 
   oIcons:AddBitmap( oBmp3:hBitmap,3,xtpImageNormal,.t. ) // 4th param, Bool to Alpha Channel Support   
   oIcons:AddBitmap( oBmp4:hBitmap,4,xtpImageNormal,.f. )
   oIcons:AddBitmap( oBmp5:hBitmap,5,xtpImageNormal,.f. )
   oIcons:AddBitmap( oBmp6:hBitmap,6,xtpImageNormal,.f. )
   oIcons:AddBitmap( oBmp7:hBitmap,7,xtpImageNormal,.f. )
   oIcons:AddBitmap( oBmp8:hBitmap,8,xtpImageNormal,.f. )
   oIcons:AddBitmap( oBmp9:hBitmap,9,xtpImageNormal,.f. )
   oIcons:LoadBitmap( "\fwh\bitmaps\32x32\edit.bmp",4, xtpImageNormal) 
    
   //oAct:Hide()
 
   // RibbonBar - Richard
   oRb = oAct:Do( "AddRibbonBar", "Ribbon Bar" )
   
   oRb:EnableDocking(64)
   oRb:EnableFrameTheme()               
   oRb:ShowQuickAccessBelowRibbon(.F.)
   oRb:ShowCaptionAlways(.T.) 
   oRb:ShowQuickAccess(.T.)  
   oRb:ShowGripper()
   
   // QuickAccess - Richard   
   oQA:= oRb:QuickAccessControls() 
   oQBtn1 := oQA:Add( 1, 1, "&New"         )
   oQBtn2 := oQA:Add( 1, 2, "&Save"        )
   oQBtn3 := oQA:Add( 1, 8, "&copy"        )
   oQA:Add( 1, 9, "&info"        )
   
   // Add SysButton - Richard
   oSysButton := oRb:AddSystemButton()
   oSysButton:IconId( 5 )
      
   oSysButton:CommandBar:Controls:Add( 1, 4, "&New"         )
   oSysbutton:CommandBar:Controls:Add( 1, 5, "&Open..."     )
   oSysbutton:CommandBar:Controls:Add( 1, 6, "&Save"        )
   oSysbutton:CommandBar:Controls:Add( 1, 6, "Save &As..."  )
   
   oControl := oSysButton:CommandBar:Controls:Add( 4, 5, "&Print")
   oControl:BeginGroup = .T.
   
   oPopupBar := TOleAuto():New( ActXPdisp( oAct:hActiveX ) )
          oPopupBar := oPopupBar:CreateCommandBar("CXTPRibbonSystemPopupBarPage")
 
          oControl:CommandBar = oPopupBar
          oControl := oPopupBar:Controls:Add( 8, 0, "Preview and print the document")
          oControl:Width = 296
          oControl:DefaultItem = .T.
          oControl:Style = 1  && xtpButtonCaption
          oPopupBar:DefaultButtonStyle = 5  && xtpButtonCaptionAndDescription
          oPopupBar:SetIconSize( 32, 32 )
          oPopupBar:ShowGripper = .F.
 
             oPopupBar:Controls:Add( 1, 4, "Print Pre&view" )
          oPrnSetup = oPopupBar:Controls:Add( 1, 5, "Pr&int Setup..." )
             oPopupBar:Controls:Add( 1, 6, "Print Pre&view" )
             
   oSysbutton:CommandBar:Controls:Add( 1, 1230, "Prepare" )
   oSysbutton:CommandBar:Controls:Add( 1, 1235, "Send" )
   oSysbutton:CommandBar:Controls:Add( 1, 1230, "Publish" )
   oExitBtn2 = oSysbutton:CommandBar:Controls:Add( 1, 7, "Close" )
  
   oSysbutton:CommandBar:SetIconSize( 32, 32 )    
   
   
   // RibbonBar Table - Richard   
   oTabFiles = oRb:InsertTab( 0, "&Files" ) 
   
   oTabFiles_Grp1 = oTabFiles:Groups:AddGroup("&Clipboard", 0)
   oTabFiles_Grp1:ShowOptionButton = .T.
   
   // TabFiles Group ToolTip - Richard
   oTabFiles_Grp1:ControlGroupOption:Id = 1000
   oTabFiles_Grp1:ControlGroupOption:ToolTipText = "Clipboard"
   oTabFiles_Grp1:ControlGroupOption:DescriptionText = "Show clipboard dialog"
   oTabFiles_Grp1:ControlGroupOption:IconId(3) 
      
   
   oPaste := oTabFiles_Grp1:Add( 4, 1, "&Paste")
    oPaste:CommandBar:Controls:Add( 1, 1, "&Paste" )
    oPaste:CommandBar:Controls:Add( 1, 2, "&Paste Special" )
   oButton1 = oTabFiles_Grp1:Add( xtpControlButton, 2, "&Cut" )
   oButton2 = oTabFiles_Grp1:Add( xtpControlButton, 3, "&Copy" )
          
   oBtn1 := oTabFiles_Grp1:Add(  1, 9, "Format")
   oBtn1:Enabled = .F.
   
   oBtn2 := oTabFiles_Grp1:Add(  1, 8, "Delete")
   oExitBtn := oTabFiles_Grp1:Add(  xtpControlButton, 7, "Exit")
            
   
   oTabFiles_Grp2 := oTabFiles:Groups:AddGroup( "&Font", 1)
  
   oButton3 = oTabFiles_Grp2:Add( xtpControlButton, 4, NIL )
   oButton4 = oTabfiles_Grp2:Add( xtpControlButton, 3, "" )
   oButton4:SetIconSize( 64,64 )
   oButton4:Width = 70
   oButton4:Height = 70
   
       
   oTabEdit  = oRb:InsertTab( 1, "&Edit" )  
   
   oTabBuild = oRb:InsertTab( 2, "&Build" ) 
   oTabBuild:Color = 5   
   oTable_Grp := oTabBuild:Groups:AddGroup( "&Show/Hide", 5025)
   oTable_Grp:Add( 9, 2807, "Ruler" )
   oTable_Grp:Add( 9, 2808, "GridLines" )
   oTable_Grp:Add( 9, 2809, "Properties" )
   oTable_Grp:Add( 9, 2810, "Document Map" )
   oTable_Grp:Add( 9, 2811, "Thumbnails" )
   oTable_Grp:Add( 9, 2812, "Document Action Bar" )
   
   oControlOptions := oRb:Controls:Add( 2, 0, "Options")
   oControlOptions:Flags = 1  && xtpFlagRightAlign
 
   oControl := oControlOptions:CommandBar:Controls:Add( 2, 0, "Styles")
   oControl:CommandBar:Controls:Add( 1, 3000, "Blue"   )
   oControl:CommandBar:Controls:Add( 1, 3001, "Black"  )
   oControl:CommandBar:Controls:Add( 1, 3003, "Silver" )
   oControl:CommandBar:Controls:Add( 1, 3002, "Aqua"   )
 
   oControlPopup := oControlOptions:CommandBar:Controls:Add( 2, 0, "Font", -1, .F.)
   oControlPopup:CommandBar:Controls:Add( 11, 32883, "System Default", -1, .F.)
 
   oControl := oControlPopup:CommandBar:Controls:Add( 11, 32884, "Normal", -1, .F.)
   oControl:BeginGroup = .T.
   oControlPopup:CommandBar:Controls:Add( 11, 32885, "Large", -1, .F.)
   oControlPopup:CommandBar:Controls:Add( 11, 32886, "Extra Large", -1, .F.)
 
   oControl := oControlPopup:CommandBar:Controls:Add( 1, 32887, "Auto Resize Icons", -1, .F.)
   oControl:BeginGroup = .T.
 
   oControlOptions:CommandBar:Controls:Add( 1, 3004, "Right To Left" )
   oControlOptions:CommandBar:Controls:Add( 1, 3005, "Animation" )
 
   oControlAbout := oRb:Controls:Add( 1, 4000, "&About")
   oControlAbout:Flags = 1  && xtpFlagRightAlign
      
   
   AAdd( aButtons, oButton1 )
   AAdd( aButtons, oButton2 )
   AADD( aButtons, oQBtn1 )
   AADD( aButtons, oQBtn2 )
   AADD( aButtons, oQBtn3 )   
   AADD( aButtons, oExitBtn ) 
   AADD( aButtons, oExitBtn2 )
   AADD( aButtons, oControlAbout )
   AADD( aButtons, oPrnSetup ) 
      
   
   oButton1:Caption = "FiveWin power!"
   oButton1:TooltipText = "Ribbonbar for FWH"
     
   ACTIVATE WINDOW oWnd
     
return nil
 
function RibbonBarEvent( cEvent, aParams, pParams, aButtons, oWnd )
 
   do case
      case cEvent == "Execute" .and. Len( aButtons ) > 0
           do case
              case aButtons[ 1 ]:hObj == aParams[ 1 ]
                   MsgInfo( "Button 1" )
                   
              case aButtons[ 2 ]:hObj == aParams[ 1 ]
                   MsgInfo( "Button 2" )
 
              case aButtons[ 3 ]:hObj == aParams[ 1 ]
                   MsgInfo( "From Quick Access Button 1" )
 
              case aButtons[ 4 ]:hObj == aParams[ 1 ]
                   MsgInfo( "From Quick Access Button 2" + CRLF + "FIVEWIN SHARING POWER" )
 
              case aButtons[ 5 ]:hObj == aParams[ 1 ]
                   MsgInfo( "From Quick Access Button 3" )
                   
              case aButtons[ 6 ]:hObj == aParams[ 1 ]
                   oWnd:End()      
                                
              case aButtons[ 7 ]:hObj == aParams[ 1 ]
                   oWnd:End() 
                   
              case aButtons[ 8 ]:hObj == aParams[ 1 ]
                   MsgInfo( "FWH's ActiveX Power support Codejock", "About Codejock" )       
                   
              case aButtons[ 9 ]:hObj == aParams[ 1 ]
                   PrinterSetup()  
                   
                                             
                   
           endcase        
   endcase        
   
return nil
 
You could help me with this example ?

Many thank´s.
Obrigado, Regards, Saludos

Rossine.

xHarbour comercial (xAcc) -> Testando harbour + bcc / msvc
fwh 9.05
Windows XP SP2
toninhofwi
Posts: 161
Joined: Tue Oct 18, 2005 10:01 am

Re: To Antonio: Harbour OLE implementation

Post by toninhofwi »

Hi Rossine,

IMHO the best is translate FWH TActiveX to support new Harbour functions. After this we can go ahead and test real apps.

Lets wait Antonio input about this.

Regards,

Toninho.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: To Antonio: Harbour OLE implementation

Post by Antonio Linares »

Rossine, Toninho,

It was a bug in Harbour SVN that we have located and fixed :-)
http://forums.fivetechsupport.com/viewt ... 906#p84906
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply