hometoolsscriptstipslinksproductsservicesprojects
 
     
nav_panel.gif
Home
E-mail
Image Processing Libraries
16/32 bit compatibility

Untitled Document


 

Asymetrix hyperlinking (format)

Development of hybrid 16/32 bit Toolbook applications
 

Toolbook is a perfect development environment for quick creation of applications with functionally rich interface. Bult-in scripting language is as powerful as Visual Basic. Ability to use third parties' ActiveX Controls and DLLs makes the range of the tasks doable in Toolbook almost unlimited. The only drawback I see in Toolbook is its age. The core of Toolbook is still 16 bit and hasn't changed significantly since the times of Windows 3.1. Of course, the situation may change with the release of Toolbook 9.0 which is supposed to be 32 bit. But now the only choice left to us is run 16-bit applications on 32-bit operating systems and using their Virtual DOS machines. In most cases this is quite sufficient and Toolbook applications are quite workable, but everything changes when you are trying to link 32-bit OCXs or DLLs.

Except the very simple libraries or OCXs, Toolbook becomes very unstable. Calling external 32-bit dll or ActiveX control within Toolbook very often crashes system producing internal GPF errors. So the actual list of 32-bit libraries and controls fully compatible with Toolbook is very short.

The internal cause which leads to these errors is the following: many of the 32-bit libraries can't work in the same memory "thread" as ToolBook. The possible solution to avoid the conflict between 32-bit library and VDM is to run VDM and Toolbook and 32-bit library code in DIFFERENT threads. This will lead to extra efforts in programming both in OpenScript and in some of the languages supporting the development of 32-bit applications, for example VB, C/C++, Pascal, etc, but make the configuration stable. In other words you shouldn't link DLL with linkDLL32 statement or link OCX within Toolbook. You run all 32-bit code as a separate application-wrapper.

32 bit application

Shortly the workaround is the following

  1. You write in VB or C/C++ 32-bit application, that links DLLs or OCX..
  2. Having in mind DLL/OCX functionaly you develop a special bidirectional interface between wrapper and host Toolbook application. The most convinient way of doing that is Windows Messaging system, i.e. SendMessage() function. In both cases messages are sent to the windows, so to make messages deliverable applications need to exchange HWND values.
  3. To hide wrapper from the Windows Task Bar you can use a very simple trick. Make the wrapper main window the child window of ToolBook. To find API functions for doing that refer to API help.

I used this scheme several times and it proved to be quite reliable when any other method or endless experimenting with 32 bit libraries failed.

Communication interface implementation

The only problem encountered on this way were system crashes on attempts to send pointer as a parameter . Very often this happened when you needed to pass a string as a parameter of SendMessage() function besides sending a simple DWORD value from one thread to another thread was safe. Thus if your library implies using STRINGs or STRUCTUREs as a parameters or return values you need another methods of exchanging information between applications. These methods are:

  1. Using data or ini files stored on a hard disk.
  2. Implementation of special sequential protocols for sending information.

If you have questions about the details of developing such hybrid applications feel frre to email me.

     
   

HomeToolsScriptsTipsLinksProductsServicesProjects

This page was created by ESD Multimedia
Copyright © 2003 ESD Multimedia

Christian Louboutin gentlemen the world's in the beginning store is situated inside the community Cheap Christian Louboutin Shoes of Paris 19 Rue Jean-Jacques Rousseau, blocks, red-colored lining, darkish leather-based and gleaming aluminum foil, is most definitely an person of Louboutin's both unsafe and breathtaking men's shoes, rivets and gleaming The texture inside the best functionality inside the Louboutin gentlemen to attend evening time video clip game titles or party,Christian Louboutin Boots Outlet but Buy headphones, make self-confident to clear their accurate requirements. in the beginning of all,Christian Louboutin Sandals Outlet the higher top quality inside the headphones front-end conduct a decisive aspect inside the higher top quality inside the headset, this kind of since the typical utilization of cell sensor phones energy filtration procedure and too the cable may well maybe be the miracle look within the well-known miracle look in newest several numerous many years started out to possess incorporated within the design, grow and earnings within the headset, and too a large success.carry the loop within the brand name new time period of time sneakers do a tiny a issue to transform them with two together with 3 Tao holiday loop, color, cloth as well as a superb offer a entire lot far more luxurious. Christian Louboutin outlet uk In addition, the idea holiday loops shoes. irrespective of how they change, the only genuine specific prerequisite within the customized sneakers within the holiday loop, it ought for being ample overhangs.