newObjects (fromerly known as ZmeY soft) ALPFrame 1.0
Home Products Development
pixel.gif (49 bytes)
Products by category
ALP area
ISAPI filters
Forums (discussions)
Articles and samples
Code snippets
A little help

Read more ...
Click here
ALP is implemented as an Asynchronous Pluggable Protocol. It acts like a WEB server but without need of network. It executes WEB applications such as ASP pages and CGI applications. ALP makes Internet Explorer to be server and client. With ALP you can write stand-alone desktop applications, CD-ROM autoruns, use ASP for pure desktop software and still keep your code ready to run on WEB servers too.
Write desktop software in ASP and CGI!
download it


Site navigation
Active Local Pages

Licensing types legend
(M) Single machine license
(U) Unlimited per-company license
(D) Unlimited development license
(S) Special type of licensing

Visual Basic News & Information Source

Quick contact


Active visitors
Suggested links
Suggest this page to the other visitors. Click the button below to place this page in the list above .

 ALPFrame 1.0   
Price: ADDITION Discount for resalers
Information Download Buy
ALPFrame 1.0
Download (zip 540k)

ALPFrame 1.0

ALPFrame is included as part of the ALP full package and the download archive provided here is intended to be used as a demonstration or for test purposes if you want to evaluate the ability of ALP to run without installation. Autorun.inf file is included in the archive and you are able to store the files in the root directory of some drive in order to run it as auto-run (or burn a CD with it). ALPFrame documentation is included in the ALP package. We decided to pack everything that the developer needs in one package and provide other downloads as demonstration only.

You can think of ALPFrame as for a WEB browser combining ASP/CGI engine and an extended DHTML model in one. But don't forget it hosts Microsoft Internet Explorer and depends on it and its version. ALPFrame will run on Windows 98 and later and Windows NT4 and later with Internet Explorer 4.0 or later installed. Although tests show that it runs on the most Windows 95 installations we can not guarantee support for Windows 95. If you are going to build ALP applications that use the ALPFrame features - pay attention to the DHTML parts of your applications if you want maximum compatibility - rely on the IE4 features only if you want to run them on any of the supported platforms - ALPFrame features are independent of the IE version.

To evaluate ALPFrame download it - unpack the archive with the sub-tree in an empty directory and run ALPFrame.exe. Try it on a machine without ALP installed. Alternatively you may download the SFX archive version and just start it (but note it uses temporary folder and its contents will be lost after closing the application - choose it if you want a quick preview only). Package includes part of the standard ALP samples and a few VarioMenu samples showing usage of the extended DHTML model.

More about the ALPFrame

ALPFrame combines typical WEB server scripting techniques with DHTML and additional client side user interface features. It is an executable intended run ALP applications without installation (running from the CD for example). It is intended to allow you to mix server-side and client side scripting on the client machine without need to care about installations or core features availability. Having both ASP/CGI and DHTML on the client machine you are able to use the easiest way for any application you built. For example DB operations are easier to implement in ASP, but visual effects are bound to the client side (DHTML) - with ALPFrame (and ALP in it) you have both features on the end user machine and choice is up to you. With the window presence, window and context menus controlled by the page scripts you are able to add UI elements typical for the other Windows applications without "drawing" menus using DHTML divisions and tables. Last updates to the final version (24.September.2001) add some additional features like menu style control from the script, window behavior control and additional menu operations (such as tracking the menu selection).

What is ALPFrame?

It is an application that hosts Internet Explorer control and does some important steps while initializing. It uses configuration describing what components to load (acts instead of the system registry) and registers the ALP engine as a temporary namespace handler for the ALPFrame process. Ships with the VarioMenu components and adds to the DHTML pages ability to build, control and use the window and shortcut menus. As a result ALPFrame provides framework that combines ASP/CGI, DHTML and typical UI elements of Windows OS in a complete execution environment.


Menus: With the VarioMenu component script in the page is able to create trees of menus and show, hide, modify them. The script can attach parts of these trees to the window (as a window menu) or use some parts for right hand menus for the items/parts of the DHTML page or diplay them on some other DHTML event (for example button click). Menu items are configured by the script to invoke a member of the page script and also support HTML frames. Menus include support for keyboard accelerators too.

Window control: ALPFrame incorporates a set of functions and objects accessible to the scripts in the WEB pages that allow them to control the:

  • window style - caption/without caption, thin captions, system menu and other window elements
  • window position - controlled through extended set of members using coordinates packed in objects (point and rectangle), Arithmetic with the coordinate objects and so on.
  • window presence - pages are allowed to make it "top most", send it on bottom, hide show it, minimize, restore and maximize it.
  • Print method independent of the IE version.

Some typical questions you will probably ask:

Why the menus are controlled by the DHTML scripts and not by the ASP scripts?
Providing as extension to the DHTML model - menu features are available to the both page scripts and server scripts (ASP/CGI). Server side script is able to generate the appropriate client script thus application is not required to use ASP pages if there is no need of server side programming in a particular part of it. Also server side scripts are not aware of the HTML frames and thus they can not control the menus in the right manner.

What can I do with the ALPFrame and it features?
You are able to build ASP/DHTML/CGI applications that:
- starts without need of installation
- presents to the user professional interface including standard window and context menus
- place it on any location and start it taking care only to copy your application - the directory with its sub-tree and all the configuration files in it.
- using frames makes possible to create very complex interface and menus will help you to make it more friendly.
- Controlling the window presence gives you ability to use techniques typically available only for the applications written in VC, VB and so on.

Why there are no toolbars (if the menus are present what about the toolbars)?
DHTML itself gives powerful designing capabilities and toolbars can be made without need of external components. But of course we are thinking about that - your opinion will be the reason to determine if there is a need of integrated toolbar support (controlled by the scripts) in the next ALPFrame versions. Also we plan to make possible to extend the ALPFrame with custom elements.

Is it applicable for the usual WEB applications?
ALPFrame is integrated with the ALP engine but this is not a limitation. Contrary - it allows distributing the application between local machine and the WEB server in an easiest way if you feel this will bring benefits to your application. Part of the server side code can be executed on the client machine and using the compatibility between ALP and the server side programming distribution process is just a selection what scripts to leave on the server and what to run locally at the user side. Your selection depends mostly on the requirements caused by the data available on the server and on the client machine. You can use it as a client side for any WEB application. You are able to add some useful UI elements to your application and update your clients by just providing a download link for the ALPFrame package prepared for them. Default starting page can be specified in it and other elements that will save administrative work.

One of the easiest ways is to make some forms to submit to the local ASP pages or to the WEB server. Suppose you have built an address catalog in ASP for example. You are able to pack the applicable part of the server application with ALPFrame and the user will have it running on his/her local machine. By allowing him/her to make requests to the server from the local application user will be able to browse your site. Making some of the server forms to submit to the local ASP pages will give the user ability to save records to the local application database.


Unfortunately not all components can be loaded and used dynamically by the ASP-like and raw scripts. The problem is caused not by a bug but by the practice:

Most development tools produce automation compatible components using the ITypeInfo interface. They load the type info by checking the registry thus if the control is not registered type info load fails and the component is not capable of automation.

Components provided with ALP load their type info directly from their resources but if you are going to use some third party components without prior registration you may expect problems with many of them. ALP applications using the standard components that are available on the system and components provided with ALP will not have difficulties.

In the code snippets part of the site modified version of the CComTypeInfoHolder ATL class is provided in order to be used to correct your own components written in C++ and ATL. We have an idea to develop Dispatch wrapper ActiveX as freeware at later time. It will not be provided as a part of ALP but it will be helpful to solve many problems.

Visual components used in the HTML page can not be registered dynamically. Registration supported by COM on all the platforms, covers only one apartment thus ALP runs as free threaded application but UI part can not be made free threaded by design. In fact most of these components are signed and are easy to install thus the problem is not fatal, but may lead to need of installation. ALPFrame can be used as a part of another applications and thus can be installed among other parts of the application (just copying it) - in that situation the problem with the additional components can be resolved by installing them, but applications intended to run with minimum requirements should depend on the features tested with ALPFrame only (Developers of the software that runs from a CD should pay attention to find if their applications do not depend on the components not able to run without install or if there is no choice to make the CD-ROM installable).

What is the license?
ALPFrame does not require licensing, but ALP engine bundled with it requires under the same conditions defined for the ALP product. You are allowed to redistribute applications with the shareware version of the bundled ALP engine as long as the applications are freeware. Note that nag screens and footnotes will be displayed as long us you have no ALP license in your applications - don't forget to inform the users about that behavior. ALP supplies appropriate links thus you are not required to include ALP license agreement with the applications. ALP engine must not and can not be removed from the ALPFrame - if you are using only static pages you are able to avoid using it but the engine must remain as part of the package.

Copyright newObjects (ZmeY soft) 2001