Clarion 3rd Party Association Standards
Version 2.10 - dated 17 July 2003

Purpose
The purpose of the standards is to improve the overall quality of Clarion 3rd party products. The standards are aimed at improving the users 3rd party experience in general. In no way should the standards inhibit the ability of any product to perform it's task.

Changes
From time to time it is envisaged that these standards will be updated. Suggestions for changes can be made by any C3PA member, and will be submitted to all the members for approval or rejection.

Clarion Versions
These standards have been designed to be independent of the Clarion version. For the sake of clarity Clarion 5 will be used in the description. However Clarion 5.5, Clarion 4 and Clarion 2 can be substituted where necessary.

Install Standards
The following standards apply to the Install of the product.

1. The Root for the install should default to C:\Clarion5\3rdParty Where C:\Clarion5 is the Root where Clarion 5 was installed. For example if the User installed his Clarion 5 in X:\CW5  then the 3PP should default to X:\CW5\3rdParty. The Root where Clarion5 was installed can be read from the Win.Ini file. Note that there are 2 possible sections in the Win.Ini, [Clarion 5 Enterprise Edition] and [Clarion 5].

Note that the destination of the installed files is ultimately decided on by the user. The default is \Clarion5\3rdparty, but the client can, if he wishes choose to install it elsewhere, for example \3rdparty or \clarion5.

2. No files should be installed into the Root directory. Rather, depending on the file type, the files should be installed into one of the following sub-directories:
  Bin : DLL, EXE
  Lib : LIB, OBJ
  Template : TPL, TPW
  Images : BMP, GIF, JPG, ICO etc
  Rsc : RSC
  LibSrc: CLW, INC (other than ABC compliant class files )
  Uninstall : Uninstall program and Log files.
  Examples\Product : All example files for the product. ( Further sub directories are allowed here.)
  Docs\Product : All documentation files for the product. ( Further sub directories are allowed here.)
2a. ABC compliant classes (CLW & INC) can be installed directly into the \Clarion5\Libsrc directory so they can be part of the ABC library.
3. The install should (optionally) amend the Clarion.RED file to point to the new install locations. If the RED file already points to the locations then no action should be taken. The AccIni utility, which is part of the C3PA Toolkit, makes it easy to amend the RED file from any install language that supports running external utilities.
4. For products with a template, the install should (optionally) register the template. The install should allow the user to override this option. The AccIni utility makes it easy to register the template.
5. For products with Runtime DLLs, the install should offer to update the path, in the AutoExec.Bat file, to point to the directory that the user chose.
6. Products must install their Documentation into the Clarion IDE on the A&ccessories\Help menu. The AccIni utility makes it easy to do this.
6a. The documentation should only be added to the Start | Programs | Clarion 5 Accessories | Product menu on the Windows Start bar.
7. For products with External EXE utilities, which are typically run by the developer during the development process, these utilities must install onto the A&ccessories menu in the Clarion IDE. The AccIni utility makes it easy to do this.
7a. The utilities should only be added to the Start | Programs | Clarion 5 Accessories | Product menu on the Windows Start bar.
8. The product should have an Uninstall facility. The Log file for the Uninstall must be unique to the product, and must NOT be Install.Log, or Setup.Log, or similar. A shortcut to run the Uninstall should be added to the Start | Programs | Clarion 5 Accessories | Product menu on the Windows Start bar. the Uninstall should NOT be added to the A&ccessories menu in the Clarion IDE.
9. The install should remove files, including DLL, LIB, TPL etc files, which have been installed into the \Clarion5\ directories by previous versions of the product.
10. The install should display (or offer to display) the documentation at the end of the install.