This user is a developer working with Harbour (a modern, open-source evolution of the Clipper programming language) who is trying to create a Tarot Card game.
He is currently stuck on the technical implementation of the user interface—specifically, how to detect mouse clicks on "cards" and how to display images (the Tarot cards) within a console-style window on Windows 11.
Here is a breakdown of his specific problems and what he is trying to achieve:
1. The Core ObjectiveThe Game: A simple Tarot game where the screen shows boxes (simulating cards). When a user clicks a box, it should "flip" and reveal an image (a BMP or other format).
The Tech Stack: He wants to use GTWVT (a Harbour graphics driver that makes a console window act like a Windows GUI window) and HBWIN (a library for Windows API integration).
Broken Mouse Support: He found that the standard Harbour mouse examples (MOUSE.PRG) don't work. He suspects this is because Windows 11 now uses the "Windows Terminal" as the default console, which handles mouse input differently than the old cmd.exe.
Difficulty Displaying Images: He is looking for a simple command like ShowImage(x, y, file), but Harbour doesn't have a "one-liner" for this in the standard libraries. He found HB_GTI_DISPIMAGE but finds it complex or poorly documented for his needs.
ActiveX / OLE Issues:
He tried using ActiveX (embedding an external component like a web browser) to display the images.
He specifically tried using Shell.Explorer (the Internet Explorer engine) to load local image files.
The Error: He is hitting a specific Harbour crash: Error BASE/1005 Instance variable: _msgDestructor does not exist. This usually happens when Harbour tries to clean up an OLE object (like a window or a button) that has already been destroyed or was not initialized correctly.
Missing Components: He noticed that older Windows controls (like MSCAL.Calendar) are missing in Windows 11, making old examples unusable.
He is asking for a "cleaner" way to:
Display an image inside the Harbour console window without writing complex C code.
Handle ActiveX events: He is struggling with how to tell the program, "The user clicked this specific part of the ActiveX control."
Fix the Destructor Error: He wants to know why his code crashes when closing the application or the control.
The user is trying to build a "retro-style" app on a "modern" OS. He’s frustrated because the bridge between the old console world (Harbour/Clipper) and the new Windows 11 environment is full of bugs, missing libraries, and deprecated features. He is looking for a reliable way to show a picture and click a button using Harbour's OLE/ActiveX capabilities.