<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta http-equiv="Content-Language" content="en-us">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<link REL="stylesheet" HREF="styles.css">
<title>ALP Settings</title>
</head>

<body topmargin="0" leftmargin="0">
<table border="0" width="100%" cellspacing="0" cellpadding="0" height="100%">
  <tr>
    <td bgcolor="buttonface" width="150" valign="top" align="left"><img border="0" src="ALP-logo.gif"></td>
    <td width="100%" valign="bottom" align="right" class="bigFont" style="border-bottom: 1 solid buttontext"><i>
        What&quot;s new
    </i></td>
  </tr>
  <tr>
    <td width="150" valign="top" align="center" height="100%" bgcolor="buttonface">
    <!-- #include file="menu-main.htm" -->
    </td>
    <td width="100%" valign="top" height="100%">
    <table border="0" width="100%" cellspacing="0" cellpadding="4">
      <tr>
        <td width="100%" valign="top">
          <H4>The new features in version 1.2 beta</H4>
          <P>
            - New version of the ALP run-time library (newObjects ActiveX Pack1 2.4)<BR>
            - The core modules (ASP, CGI and standard features support) are now embedded in
              the core ALP DLL - iewebsrv.dll<BR>
            - Many little improvements and compatibility additions in the ASP object model.<BR>
            - New version of the installer.
          </P>
          <H4>The new features in version 1.1</H4>
          <p><B>Upload</B>. ALP now supports upload. Even if it looks a bit funny to have upload support from local machine
            to itself it is very useful for compatibility reasons and sometimes for convenient solutions that require one 
            or more files and the ASP page that receives them wants to pack/inspect or send them somewhere. This feature 
            concerns the <B>BinaryRead</B> method and <B>TotalBytes</B> property of the Request object.
          </p>
          <p><B>global.asa</B> support. ALP now searches for a global.asa file and executes it if it is found. Also the 
            Application_OnStart and Session_OnStart events are fired to the script in this file.             
          </p>
          <p><b>&lt;OBJECT RUNAT=SERVER&gt;</b> and <b>&lt;SCRIPT RUNAT=SERVER&gt;</b> tags suport. These tags now can be used 
            in the global.asa and the ASP files. The developer whould be careful when developing applications that must run
            under ALP and IIS -  ALP is more tollerant to the objects threading models than IIS. Special attention requires 
            the Application object - in ALP any object can be saved in it but not in IIS. However using the OBJECT tags in global.asa 
            will help you avoid such differences. See the both ALP and IIS documentations if you have such elements in your 
            application and the cross-compatibility is a must.
          </p>
          <p><b>Server.Execute</b> and <B>Server.ExecuteEx</B>. This gives compatibilty and also brings some advances very 
              useful for ALP applications. While the Execute method resembles the same method in IIS - ExecuteEx goes further
              and allows local and network requests through any protcol. The data returned can be mainained by the ASP pages as
              string or binary.  
          </p>
          <p><b>NetProbe (beta)</B> component goes further and allows ALP applications to connect through almost every existing protocol
          to WEB servers, FTP servers, local protocols (for example to extract resources from executables or CHM - help files).
          It is an abstract and universal component that allows send/fetch of binary and textual data in protocol independent manner. Currently
          it supports Windows NT 4, Windows 2000, XP and later, the beta has some limitations on the older Windows versions.
          </p>
          <p><b>IISComatible option</B>. For the ASP applications this options specifies a level of compatibility. Currently
              supported values are 0,1,2. Using this option in the alp.application file the application may request from ALP the 
              behavior it expects. For example applications built for older ALP versions may depend on the fact that Session and 
              Application returned Null if the requested item was not found - by setting the level to 0 they will have it done. By 
              setting the level to 2 the ASP pages will receive behavior that resembles IIS and in the previous case Empty will be 
              retunred instead of Null.
          </p>
          <p><b>ActiveX Pack1</B> ships with ALP and is integral part of it. This pack includes wide range of useful self-dependent
              components. They include much more powerful file/stream/directory/storage management set (no need to use FSO and fear of
              Norton antivirus) which also supports binary and text modes, record based access to files and streams (known also as flat file access).
              The pack includes also universal collections and configuration reader/writers - INI files, registry, text configs, binary streams. They can be
              used to store/send/receive configuration data and also in some cases may replace XML techniques (especially if the 
              compatibility with any system is a must). Using the UDS (Universal Data Structures) supported by the ConfigFile component you
              can perform similar tasks in similar way as with XML. Sometimes learning one more component can be much easier than fighting
              the redistribution and versioning problems of the XML components. With a little intial effort to learn a few objects you are able 
              to use one single way to access registry, text files and structured data in binary streams/files. Furthermore the pack contains 
              script hosts (ALP uses them), Bitwise operations and type conversion utilities (contain features that are not available in VBScript or JScript).<BR>
              Latest additions to the pack include ShellLink object - creates/manages shell shortcuts, ability to extract Version information for
              any file (DLL, EXE etc.), Advanced COM tools - you can run components or scripts in separate threads, create COM apartments completely
              controlled by the application, create COM components directly from DLL (no matter if they are registered in the registry or not),
              Create composite objects from scripts and binary components dynamically or statically (create definition and register it as COM component).
          </p>
          <P><B>COM objects aliasing.</B> You can create aliases for the COM objects used in your application and use them instead of the original ProgID or
          Class ID. The aliases are defined on per-application basis - each application may use its own aliases. This removes the requirement in the 
          older ALP versions to use ClassID in Server.CreateObject when developing pure autorun software which uses these components not registering them
          into the registry first. to set the aliases use the ALP Settings shell extension - in the application setting enter the configuration for
          the ASP pages.          
          <P>
          <P><B>ASP Objects support.</B> Now ALP can give direct access to self to the COM objects created in the pages. OnStartPage and OnEndPage
          methods are called on the object to pass the ASP objects to it. So the object has direct access to the request data supplied by ALP and
          can perform output on its own. The limitation of the technique is that this should happen through automation only (IDispatch) and as ALP
          avoids dependence on MTX/COM+ services the old-style technique should be used (in fact it is still more popular even for the newer components
          created by the vendors).
        </td>
      </tr>
    </table>
    </td>
  </tr>
  <!-- #include file="footer.htm" -->
</table>


</body>

</html>
