WebHub Release Notes for v2.098 and v2.099
This file was last updated 14-Sep-2010
Skip
to: WebHub Object Pascal Components
The Hub
Runners
You may need to reboot after installing WebHub v2.099. If, after upgrading to v2.099,
requests to your apps "hang" inexplicably, try net stop w3svc
, net stop iisadmin
, net stop hub
and then restart the hub and w3svc; OR reboot. Operation should then be completely normal/fast/wonderful.
Customers with existing XML files: please validate your application-level XML file with
http://webhub.com/xsd/cv004/WebHubAppConfiguration200811b.xsd before expecting it to work in a v2.099 WebHub app.
The Hub
- Secondary commands use cross-platform technique v2.098
- The following commands are sent using a new technique: cover app, uncover app, terminate app, show app, park app, refresh app.
- As a consequence, if you use WebHubAdmin v2.098 to send these commands to WebHub applications built with
older components, the commands will not be received.
- Session cookie name can be customized by AppID v2.098
- SessionCookieName is now loaded from WHCentralInfo.xml instead of from the application-level config,
so that the runner finds it easily and quickly.
- Central config XSD updated v2.098
- Use http://webhub.com/xsd/cv004/WebHubCentralInfo200810.xsd . Reference: WHConfiguration-cv004.pdf
- SessionCookieName added.
- ShutdownWHApps.exe is version-sensitive
- ShutdownWHApps.exe is a command-line utility for telling all WebHub EXEs to exit, available upon request
from HREF Tools. Version 1.0.0.0 supports WebHub EXE versions through v2.097 but not v2.098+.
- A new version has not been compiled yet; please ask.
- Hub service uninstall command changed v2.098
- Usage: hub.exe -uninstall (was -remove)
- Error Logs v2.098
- Any details about startup errors will be logged in a file in the same folder as hub.exe.
- HubApp to be discontinued
- Future versions of the Hub will not load a HubApp, and will not use up a licensing slot.
- Customers who were using the HubApp named "WebHub Central" will need to use another technique for
viewing and managing applications, such as running WebHubAdmin on the server.
- Customers who were running their own lite application inside the Hub should use whLite.dpr or equivalent
to run their application.
- Hub can start and stop WebHub apps automatically v2.098
- If configured appropriately in WHCentralInfo.xml, the Hub will start WebHub applications when it starts
as a service, and/or stop them when it stops.
- Both regular applications and services are supported.
- Look for configuration of: number of instances to run minimum (integer),
number to start with Hub (integer), and whether instances
should stop with the Hub (boolean).
- Configuration can be done with ZMadmin (recommended) or with an XML editor (fine as long as you use the correct
latest XSD to validate your entries).
WebHubAdmin
- Several new features on Connected > Setups panel. v2.098
- For any AppID, you can now tell all instances running that AppID to show, park, cover, uncover, terminate, refresh.
- Connected > Current panel is active v2.098
- This panel, which tells you about WebHub applications and runners that have successfully connected to
the Hub, is active in WebHubAdmin now. In earlier versions it was in WebHubView, and previously in the Hub when it had a graphical user interface.
- To refresh the display of connected apps, press [F5] or click the [redraw] button.
- Help > Contact HREF Tools v2.098
- This is a quick way to send a message to us. Data is sent using your web browser.
- Tools > Reset XSD v2.098
- This feature reviews all XML files and resets the XSD resource name to the latest one supported
by the running version of WebHubAdmin.
- This feature is also available during installation.
- Error Logs v2.098
- Any details about startup errors will be logged in a file in the same folder as webhubadmin.exe.
- WebHubView: obsolete v2.098
- The features that were in WebHubView have been moved into WebHubAdmin, notably the menu option "Tools > Down Web Apps", and the Connected > Current panels.
- The Requests panel is active only in the cross-platform edition of WebHubAdmin (not public as of 31-Aug-2008).
- Options panel is obsolete v2.098
- Please use ZMAdmin to view and maintain your WebHub configuration settings.
- EurekaLog 6.0.17 used v2.099
- Hub and WebHubAdmin are compiled with EurekaLog 6.0.17. We appreciate any exception reports that you send us.
WebHub Object Pascal Components
- Delphi 2009 support summary v2.098
- WebHub v2.099 for Delphi 2009 is suitable for prototypes and low-traffic applications.
- Performance is somewhat SLOWER than when the same project is compiled with D06 through D11.
- See webTypes.pas: the type TwhString is declared as UTF8String in this edition. This
enables features to work NOW.
- We plan to switch to TwhString to string for full unicode support as soon as possible.
We must obtain ldiRegEx (our regular expression library) with unicode support first.
- App and Runner version MUST MATCH v2.098
- WebHub applications built with v2.098 require a runner of the same (or higher) version.
- WebHub applications built with v2.099 require a v2.099 runner (if using SendFileIIS).
- ZaphodsMap v1.031 included v2.098
- This includes a fix which had, in the past, occasionally led to 0 byte configuration files.
- Application-level config XSD updated v2.098 05-Oct-2008
- Use http://webhub.com/xsd/cv004/WebHubAppConfiguration200810.xsd
- SessionCookieName removed.
- Added support for zmHint and zmDataType attributes on AppSettings, for a feature pending in ZMAdmin.
- Application-level config XSD updated v2.099 28-Nov-2008
- Use http://webhub.com/xsd/cv004/WebHubAppConfiguration200811b.xsd
- For Teko Files, the id is now REQUIRED.
- Surround Item tags for the following component families in an ItemList tag: whLogin, whCycle, whErrors, whListGrid
- AppInfo.SessionCookieName loaded from config v2.098
- This property is loaded from WHCentralInfo.xml; XSD date must be 200807 of later.
- Earlier versions had a property, Security.SessionCookieName, which was ignored.
- Restorer improved v2.098
- You should find that your form position and size data, plus edit control values, are all saved
to a single configuration file, rather than to numerous AppRestorer.xml files in every folder containing
a WebHub EXE.
- WebHub applications respond to commands using new technique v2.098
- See note above regarding WebHubAdmin; uses tpShareB.pas which is now part of TPack.
- Main menu used based on configuration setting v2.098
- Many earlier versions of WebHub supported a /NoMenu command-line parameter which caused the main menu
to be destroyed, in order to conserve Windows menu resources.
- Now the menu's presence or absence is controlled by the Startup/MenuEnabled node in the application-level configuration file.
- Requires: whMain.pas or equivalent
- Many improvements to the TPack Restorer components v2.098
- Only forms that are derived from TutParentForm are automatically saved/loaded by the restorer component.
- Unit whForm is obsolete v2.098
- Removed from WebHub runtime ("RT") packages.
- No longer used by the WebHub message form (webSplat.pas).
- ACTION macro used in frameset src tags gives correct dynamic url v2.098 29-Jul-2008 05:40gmt
- Fixed both whcfg_App and webInfoU units. Support Reference #00336.
- Errors on Exit due to Restorer v2.098
- If you are getting access violations on exiting your WebHub application, add the following 4 lines before
InitCoreWebHubDataModuleGUI;
(probably in your DPR file).
-
- New compiler flags v2.098
-
- PREVENTGUI: (Q)Forms should not be linked into the project at all.
- and/or
- PREVENTSVCMGR: SvcMgr should not be linked into the project at all.
- For Linux apps that will run without a suitable desktop, compile with both flags (and that will yield a console app.
- On Windows, for WebHub apps that you NEVER want to run as services, use PREVENTSVCMGR. Otherwise, do nothing.
- On Windows, for WebHub apps that you NEVER want to have active panels for debugging, testing, entering html, checking on
Dreamweaver status, etc., use PREVENTGUI. Otherwise, skip the compiler flag and use the command line /debug feature below.
See this technote for an overview on how to set up an app when you DO want it to run as a service.
- Instead of the old flag "NoEdit" please use "PREVENTGUI".
- The WebHub splash screen (webSplat.pas) does NOTHING when compiled with PREVENTGUI.
- New command line flags:
- While WebHub applications run WITHOUT FORMS by default in v2.098, this decision was later reversed so most people can ignore this topic. In v2.098, call
ForceForceGUI;
or ForceEnableGUI;
(uses MultiTypeApp) if you want to completely override this default for your application.
- For users of newer versions of WebHub: please contact tech support if you need help. You
have the option of avoiding the Forms unit at compile time, or of including GUI units but instantiating them depending on command line flags. Your decision on this is not critical for the Windows platform.
- /debug: force gui to be active (of course, this only works IFNDEF PREVENTGUI)
- -install [-servicename=abc] [-displayname="any name"] // uses tpProj.pas
- -uninstall [-servicename=abc]
- New component: TtpProject v2.098
- Appears on TPack palette. Uses new units: MultiTypeApp.pas and tpProj.pas.
- Enables a Delphi programmer to build an application which, using the compiler directives above,
can (relatively easily) compile in any of the following ways:
- as a normal Windows application with a GUI
- as a Linux application with a GUI, to be used with desktops compatible with QForms
- as a Windows service with a GUI
- as a Windows service without a GUI
- as a Linux console application without a GUI
- as a Windows console application without a GUI
- For windows, can target win32 or dot net.
- This technique completely replaces the prior technique of compiling with SvcApp.pas.
- Detailed instructions for doing this will be added to the online help system shortly after v2.098 is ready for
download by customers. To prepare, you should try as much as possible to isolate GUI code in separate
forms, and to use units or datamodules for all non-gui code.
- We subsequently renamed MApplication to Application, so you should upgrade directly to v2.100 and do not worry about the leading 'M'. You may want to write
{M}Application
as a reminder that you
are using the multi-type-application, but this is not necessary.
- Whenever possible, replace Application with {M}Application.RootOwner
- These are the events and their meanings:
- OnBeforeFirstCreate: use this if you want to log that your application is alive or to
assign it to a single CPU
- OnCustomServiceCreate: rare -- use this only if you need to use a custom TService datamodule. See PREVENTSVCMGR compiler directive notes above.
- OnDataModulesCreate1: use this if you need to create a datamodule containing your TwhApplication component; usually
CreateCoreWebHubDataModule; // uses dmWhApp
- OnDataModulesCreate2: use this for
pWebApp.AppID := SuggestedAppID; pWebApp.Refresh;
- OnDataModulesCreate3: use this if you need to create any datamodules that depended on TwhApplication.IsUpdated being true.
- OnDataModulesInit: use this to run extra initialization code in any of the data modules; usually
InitCoreWebHubDataModule
- OnGUICreate: use this to create TForms
- OnGUIInit: use this to initialize anything GUI-related; usually
InitCoreWebHubDataModuleGUI
- OnStartupError: use this to display and/or log any error that happened during startup.
- OnStop: use this to call any special termination code, perhaps to stop some threads.
- whsample_EvtHandlers.pas changed v2.098
- whShared.pas changed v2.098
- Removed unused public variable
- whMain.pas changed v2.098
- Raises exception if created in the wrong order.
- In your DPR, move
Application.CreateForm(TfmWebHubMainForm, fmWebHubMainForm);
AFTER
all data modules have been created.
- dmWhApp.pas and dmWhDbAp.pas changed v2.098
- Designed for use with MultiTypeApp and, ideally, TtpProject.
- You must add a call to InitCoreWebHubDataModuleGUI; if you want the forms or menu to work properly.
- ucWinAPI.RunningAsService obsolete
- This global variable has been removed.
- If you were using it, consider using the function MultiTypeApp.EnableGUI to determine whether you
should activate a particular feature.
- ucOnce.pas is shipping but obsolete
- Published under MIT license.
- If you were using it, consider using TtpProject and tell it to make sure that only a single
instance runs.
- Hints for upgrading v2.098
- Due to the paradigm change with MultiTypeApp and TtpProject, it is not possible to upgrade your
WebHub applications from v2.097 to v2.098 using FuzRegEx. You will have to upgrade them manually.
- The following are optional reminders for anyone who wants to refactor their application to
take advantage of the new TtpProject component.
- Decide whether you want to add either of these new compiler directives: PREVENTSVCMGR, PREVENTGUI
- In your DPR, change Forms to MultiTypeApp
- In your DPR, add
uses tpProj in 'h:\tpProj.pas';
adjusting the path if necessary. It is
essential to reference the .pas file so that adjustments will be made for your compiler directives.
- In your DPR, if you are using utMainFm, utTrayFm or utPanFrm, make sure that you include the path
to the .pas file so that those units will be rebuilt using your compiler directives. Example:
- Open webhub\lib\whsample_DMProjMgr.pas and Save-as to your own project folder. Rename the datamodule
and consider renaming the TtpProject instance.
- Depending on which one was used in your DPR, add the following unit name to the uses clause under
implementation: dmWhApp or dmWhDbAp.
- In your DPR, comment out all code, from Application.Initialize to Application.Run inclusive. Do not
delete any of it until you are sure you have the new version running.
- In your DPR, add these 4 lines:
- In your Project > Run parameters, add /debug (essential during development). Also adjust any BAT files or other startup shortcuts that are used during development.
- Carefully review every line of code that was commented out. Every line should be moved to the appropriate
event handler in your data module containing TtpProject.
- CreateCoreWebHubDataModule belongs in event OnDataModulesCreate1.
- Any code for setting the pWebApp.AppID and refreshing pWebApp all belongs in event OnDataModulesCreate2.
- Any code for creating other non-visual datamodules belongs in event OnDataModulesCreate3.
- Any code for creating panels (usually anything that uses Forms unit) belongs in event OnGUICreate
and remember to change Application.CreateForm to {M}Application.CreateForm. Example:
if ShouldEnableGUI then {M}Application.CreateForm(TfmAppHTML, fmAppHTML);
- InitCoreWebHubDataModule belongs in event OnDataModulesInit, along with any other statements that
initialize anything in a non-visual data module.
- A new method, InitCoreWebHubDataModuleGUI, belongs in event OnGUIInit. Example:
if ShouldEnableGUI then InitCoreWebHubDataModuleGUI;
- Make sure that you have changed Application.CreateForm to {M}Application.CreateForm everywhere.
- If you are left with any lines of DPR source that you are not sure where to sort, you could study
the demo project source on demos.href.com or contact technical support
for guidance. The key idea is to sort out all the dependencies, so that units are always created in the
correct sequence regardless of whether the app is used as a service or not, or with a gui or not.
- *** OnDataModulesCreate1 is for things that must occur before setting the AppID. OnDataModulesCreate2 is for setting the AppID and refreshing the app object. OnDataModulesCreate3 is for creating all the datamodules that depend on the AppID already having been set.
- Please note that although all previous WebHub project examples created the TfmWebHubMainForm before
CreateCoreWebHubDataModule, this was never a requirement. The datamodule creation should really come before the visual form creation.
- In your own data modules, if you were using the Forms unit and you want to allow for a
non-GUI edition, try using this pattern:
{$IFNDEF PREVENTGUI}if EnableGUI then .... ;{$ENDIF}
. Change
Forms to MultiTypeApp in your uses clause. EnableGUI is a function which returns True when /debug is on the command line that started your app.
- Search for "Forms" throughout your project. If you find it in any datamodules, investigate. Try to
remove it. Make sure that you are not touching any graphical user interface elements during your Create or Init procedures.
If necessary, make a separate InitGUI procedure to be called from event OnGUIInit.
- Startup/MenuEnabled configuration flag supported v2.098
- Default: menu is enabled
- Replaces old command line option /NoMenu
- Startup/StartMinimized configuration flag supported v2.098
- Default: starts minimized
- Replaces various old techniques for minimizing and maximizing via the command line
- Startup/SplashEnabled configuration flag supported v2.098
- Default: splash is disabled
- Replaces old command line option /NS
- Startup/TrayIconEnabled configuration flag supported v2.098
- Default: tray icon is enabled; code in whMain.pas
- Replaces old command line options /Tray and /NoTray, as well as compiler directive NOTRAYICON.
- Startup/Modules supported v2.098
- If your project uses the new unit uAutoDataModules.pas, you can call AutoCreateDataModules to
create the dreamweaver, dreamweaver-security, email and/or shared-refresh modules
based on settings in the application-level configuration file.
- If your project uses the new unit uAutoPanels.pas, you can call AutoCreatePanels to
create any of the following panels: appin, appout, decode, googlesitemap, whteko.
- Code for the preview panel is not yet shipping but is planned because David Baldwin has released the
required components as freeware.
- Delphi overrides for app configuration v2.098
- If you need to override properties which are (re)loaded from the application-level configuration file
every time the application refreshes, you can use the new OnAferLoadFromConfig event which is available on
each nested object, e.g. Situations.
- This is used in the WebHub demos to avoid having to maintain dozens of separate config files with the
same flags.
- App's config: id no longer used for whMailForm v2.098
- This issue applies only to people upgrading older applications.
- If you are using TwhMailForm and you validate your app's XML file against the latest/correct XSD file,
you will see that you need to remove the attribute named "id" from all items.
- The "id" was required in the original version of WebHub which used INI files. It should not have been
required at all in the XML edition. The "name" completely identifies the item.
- How to validate? 1. Use Dreamweaver. 2. Use a free utility. 3. Use the new ZMAdmin which will give
detailed error messages. Detailed instructions at http://webhub.com/dynhelp:alias::syntaxvalidation
- Application-level XML without the id attribute are not backwards compatible to WebHub v2.097-.
- App's config: whCycle id should start with a letter not a digit v2.098
- You may need to add a letter before each id (in XML) used by the TwhCycle component in order to make
the file validate. This change is backwards compatible.
- App's config: MediaSource id should start with a letter not a digit v2.098
- You may need to add a letter before each id (in XML) under MediaSources in order to make
the file validate. This change is backwards compatible.
- Delphi: Request.ExecutablePath v2.098
- This is now only the path to the runner, e.g. scripts
- Use Request.RawVMR for scripts/runisa.dll or cgi-bin/runbin.exe
- Delphi IDE A/Vs fixed v2.098
- There had been an access violation in the Delphi IDE if you: started with an empty form, added TwhApplication, Refreshed it, then deleted the TwhCentralInfo which was created automatically.
- There had also been an access violation if you tried to set an AppID without a valid CentralInfo component hooked up.
- WHZMConverter updated 25-Aug-2008
- The wizard for converting INI configuration to XML has been updated such that a single converter
supports versions up to v2.097 and version 2.098 and above.
- Customers: to download WHZMConverter.zip, connect using your ftp account and you will see the file in your home directory.
- Error Logs v2.098
- Any details about startup errors will be logged in a file in the same folder as the EXE.
- After the application object has refreshed successfully, any subsequent logging will occur in
the folder specified in WHCentralInfo.xml. A separate folder can be used for each AppID.
- TtpComponentPanel moved to tpCompPanel.pas v2.098 06-Sep-2008
- Add tpCompPanel to your uses clause.
- NativeXml v2.38 included (DCU) v2.098 06-Sep-2008
- Major upgrade in the XML component underneath TZaphodsMap: we are now using the latest, which is v2.38.
- We have modified it so that it compiles with Delphi 2009.
- Tests show that you can use Unicode data as values anywhere in your XML files, but you cannot use Unicode
for attribute names.
- NativeXml upgraded for UniCode support v2.099
- We have extended NativeXml so that it provides WideString support for earlier Delphi compilers.
- The declaration of TNativeXml is now contained within an IFDEF so that it varies appropriately by version of Delphi.
- Stronger multi-domain support v2.098 06-Sep-2008
- If your app's server profile has AllowDynamicAuthority set to true, then requests for the app
that come in on a different authority will continue to stay on that authority.
- As an extreme example of this, demos.href.com runs both IIS on port 80 and Apache on port 8082, and
you can use either or both of the http software packages at the same time, even with the same session.
- This is subtly different than the "classic" WebHub behavior because it is now possible to switch
not only to a different domain, but also to a different type of runner, i.e. isapi versus cgi-bin.
- See source in whcfg_App.pas
- New unit: webPrologue.pas v2.098 24-Sep-2008
- Definition of type TwhPrologue moved to webPrologue unit.
- TwhPage property changes (PagePrologueMode, CustomContentType) v2.098 02-Oct-2008
- PrologueMode renamed PagePrologueMode to differentiate it from the Response.PrologueMode.
- CustomContentType added
- Call SetContentType to adjust these properties, e.g.
SetContentType(proHTML, '');
or
SetContentType(proCustom, 'image/gnew');
.
- The showcase demo now includes examples for css and xml documents served
by WebHub.
- Content-Type capitalization standardized v2.098 03-Oct-2008
- In a few places, WebHub had used Content-type and those are now all Content-Type with an uppercase T.
- Reference: w3.org, section 14.17 Content-Type
- FLUSH command support v2.099 12-Oct-2008
- FLUSH command does NOT seem to be working. To be determined shortly.
- SendFileIIS syntax changed. v2.099 22-Oct-2008
- New: explicit parameters for mime type and for whether to delete the file after sending it.
- Requires latest components AND latest runner.
- New: AdminSessionNumber v2.099 2-Nov-2008
- In the application-level config file, under Security, you can now specify an AdminSessionNumber. This
is loaded into pWebApp.Security.AdminSessionID.
- If a request uses this session number, it will be allowed to bypass the frontdoor and to
come in from any ip number.
- Use with care!
- New Send Immediate methods v2.099
- Any Send methods whose name ends in 'Imm' will send data to the output document immediately,
without expansion of WebHub expressions.
- SendFile improved v2.099 18-Nov-2008
- If you use the INCLUDE command or SendFile in Delphi to transfer a file containing WebHub expressions,
and the file is larger than 16k bytes, it will now expand correctly. In all older versions there was a
chance that some commands would not expand.
- Reference: support #00348, online help
- SendFileSection renamed SendFileSectionImm and it no longer expands any WebHub expressions.
- TwhMailForm port can be an integer value other than 25 v2.099
- In previous versions using ZaphodsMap, the port was always set to 25, even if a different value was
listed in the application-level configuration file.
- SendWideString no longer required v2.099
- Response.SendWideString is obsolete. To work with WideString data,
use the Delphi 2009 compiler and use any of the many Send methods such as SendString.
- If you are working with UTF8String data and D06 through D11, use any Send method. If you are
working with UTF8String data and D12 (Delphi 2009), use the UTF8SendString method. This could occur if
you are using a database engine which natively uses UTF8String instead of Unicode string.
- pWebApp.SendPChar is obsolete v2.099
- The method SendPChar on TwhRespondingApp is no longer available.
The reason is that it involved too many transformations between string and pchar, and was poorly named.
- Please consider using pWebApp.SendStringImm (fast, does no expansion), pWebApp.SendString (fast, does expansion),
or pWebApp.Response.SendRawImm (fastest, uses a buffer of raw data, does no expansion).
- pWebApp.Response.SendPChar is also obsolete.
- Delphi 6 support will stop around 01-Jun-2009
- In addition, WebHub for Delphi 2005 and 2006 is only available by special request. That leaves Delphi 7, Delphi 2007 and Delphi 2009 fully supported, plus partial support for Kylix 3.
ZMAdmin
- Requires panel config file.
- Previous versions of ZMAdmin had the configuration for the WebHub panel built into the EXE.
- Now and going foward, ZMAdmin will load its WebHub panel configuration from a file. The
filename is
ZMAdminWebHubPanel.xml
. For ZMAdmin v1.0.0.9, the configuration file must
be located in the same folder as the EXE.
- For ZMAdmin v1.0.0.10, the configuration file is loaded based on a Key2File which is created during
the WebHub Runtime installation, which will point to
WebHub\Config\ZMAdminWebHubPanel.xml
.
- The WebHub Runtime installer creates a shortcut under Start > Program Files > HREF Tools > WebHub > ZMAdmin.
If you want to make your own shortcut, call
ZMAdmin.exe "ZM Configuration" HREFTools\WebHub\cv004
.
- Supports full configuration of applications v2.099
- ZMAdmin as shipped with WebHub v2.099 is able to help you configure the central WebHub configuration files
plus the application-level config files.
(top)
Runners
- No warning logged when WHTemp undefined. v2.098
- The ?echo page displays the WHTemp folder name; do not log a warning even if WHTemp is not fully configured.
- Compression with Microsoft IIS 6 and runisa.dll v2.098 24-Sep-2008
- WebHub v2.098 is the first version to support the built-in compression feature of IIS 6.
- Instructions for enabling compression in general:
Enabling HTTP Compression in IIS 6.0, tips,
authoritative summary for troubleshooting
- Note for users of older runner: you should find that the output of the runner's ?echo command will compress,
and that output from pages from your application will not compress. To resolve this, upgrade to the latest
version of WebHub Runtime or contact technical support.
- SendFileIIS support v2.099 11-Oct-2008
- The combination of WebHub v2.098 apps and runner did NOT support SendFileIIS.
- Resolved 11-Oct-2008 in v2.099.
- Application handle (processid) support v2.099 12-Oct-2008
- The v2.098 runner did NOT work when UseAppProcessID was True. IE7 showed problem most plainly.
- Resolved 12-Oct-2008 in v2.099.
- OnFrontDoorTriggered event syntax changed v2.099 2-Nov-2008
- A pointer to the connection is passed using the correct type (TwhConnection).
- The desired PageID is passed as a string. If you had custom code for trying to figure out
the desired PageID, delete that and used the passed-in value.
- There is an example handler in the whsample_DWSecurity.pas unit.
- Slight change in TNativeXml v2.099 2-Nov-2008
- Change
ADoc.Utf8Encoded := True;
to ADoc.ExternalEncoding := seUtf8;
- Note: this is now the default encoding.
- ThtStringStream.WriteWideString deprecated v2.099 17-Nov-2008
- Please plan to use Delphi 2009 if you want to support WideString (unicode). The Send method will support
Unicode data (not in v2.099 exactly but very soon).
- The next version of WebHub will not include WriteWideString.
- The same applies to WideLoadFromFile, WideSaveToFile.
Installation Program
- WHTemp folder defined during installation v2.098
- In HREFTools\cv004\ZMKeybox.xml, if WHTemp is not already defined, it is set to point to a folder
named WHTemp under the data folder.
- This folder is primarily for future use. It is required for in-house testing.
WebHub on Vista - Installation Notes
These notes also apply to installation of WebHub Runtime on Win2008.
- To set execute permissions on the scripts virtual directory, select the virtual directory in IIS7 and double click Handler Mappings. Then click Edit permissions, uncheck Read and check Execute. That should allow runisa.dll to execute.
- Install ISAPI extension/filter support. This is not installed by default when you install IIS7. Go into Control Panel > Programs and Features > Turn Windows Features On or Off. screenshot
(top)
FYI: Valid DTDs on w3.org
FYI: Valid DTDs on w3.org
Copyright © 2008 HREF Tools Corp. All Rights Reserved. TPACK and STREAMCATCHER are registered trademarks of HREF Tools Corp.