IBM Support

PK84497: RFT7013: Message WM_USER+1 (#define WM_FINTHREAD WM_USER+1) - BB VA

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Origin of the problem
    
          BBVA had shared a part of the IELink .dll code from which
    we could find that they are listening to the Message WM_USER+1 (
    #define WM_FINTHREAD WM_USER+1) and at the end of processing the
     message they quit their BrowserThread using the call  'PostQuit
    Message(0);  WM_USER message should be processed specific to win
    dows as per the specification. RFT is following
    this specification. RFT window message is being processed by the
     GetMessage () of IELink
    
            The customer?s IELink.dll was created, is not as per pro
    per specification of Windows message.  If you would see MSDN hel
    p on how to define and used by an application to send messages w
    ithin a private window class.
    
            'Message numbers in the second range (WM_USER through 0x
    7FFF) can be defined and used by an application to send messages
     within a private window class. These values cannot be used to d
    efine messages that are meaningful throughout an application, be
    cause some predefined window classes already define values in th
    is range. For example, predefined control classes such as BUTTON
    , EDIT, and LISTBOX may use these values. Messages in this range
     should not be sent to other applications unless the application
    s have been designed to exchange messages and to attach the same
     meaning to the message numbers. '?
    
            More information at msdn at http://msdn.microsoft.com/en
    -us/library/aa928069.aspx
    
    Implementation of the recommended solution :
    
     We can propose two changes to fix this problem in cleaner way,
    the fix should be done in the customer?s application.
    
            1 ) It is a coding standard that messages need to be pro
    cessed based on  'window'.  The solution to the problem faced is
     to make the code change in the customer?s VentanaIE.cpp to proc
    ess the message based on the Browser handle, like
    
    ########################
    if(msg.hwnd == hwndChild)
    {
     if(msg.message == WM_WAITFINTHREAD)
     {
     .......
    ##########################
    
    
            2) The other alternative is to use WM_APP instead of WM_
    USER Message. If you see in the file VentanaIE.CPP, that define
    Window Message. This has to changed as below
    
    // Mensaje para finalizar el thread
    #define WM_FINTHREAD WM_USER+1
    #define WM_WAITFINTHREAD WM_USER+2
    

Local fix

Problem summary

  • RFT internal messages were consumed by the Application under
    test and this lead the applicaiton to go to inconsistent state.
    

Problem conclusion

  • Changed the RFT internal message ID's.  Fix available in FixPack
    8.0.0.3.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK84497

  • Reported component name

    RAT FUNC TESTER

  • Reported component ID

    5724G2503

  • Reported release

    701

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-04-10

  • Closed date

    2009-06-18

  • Last modified date

    2009-06-18

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    RAT FUNC TESTER

  • Fixed component ID

    5724G2503

Applicable component levels

  • R800 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSJMXE","label":"Rational Functional Tester"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
24 October 2021