Clarion 3rd Party Association Standards
Version 3.02 - dated 28 May 2009

Purpose

The purpose of the standards is to improve the overall quality of Clarion 3rd party accessories (or 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.

Clarion7 Install Standards

The following standards apply to the Install of the Accessory (Variables in italics):

  1. No modification of any of the existing Clarion7 files is recommended or required. The RED file has been pre-configured by SoftVelocity to contain the paths required for the Accessory's files.

  2. Examples should be installed (by default) into the C:\Documents and Settings\All Users\Documents\SoftVelocity\Clarion7\Accessory\Supplier\Product

    There should be an option in the installer as to where to place the examples.

  3. All files (excluding examples) should be installed into the sub-folders provided by SoftVelocity in the %ROOT%\Accessory folder, where %ROOT% is the folder into which Clarion7 has been installed (typically C:\Clarion7 or C:\Program Files\SoftVelocity\Clarion7). This should not be optional in the install.

    Depending on the file type, the files should be installed into one of the following sub-directories (inside the
    %ROOT%\Accessory folder):
      Bin : DLL, EXE
      Lib : LIB, OBJ
      Template\win : TPL, TPW
      Images : BMP, GIF, JPG, ICO etc
      Resources : RSC and other resource files needed for compilation
      LibSrc\win: CLW, INC
      Uninstall : Uninstall program and Log files.
      Documents\Supplier/Product : All documentation files for the product. ( Further sub directories are allowed here.)
      Vendor\Supplier\Product : Any other files that are included in your install. You can put a shortcut to your examples in here.

  4. The following addins should be included in the install (include an option in the installer to install these): AccessoryMenu.AddIn, Supplier.AddIn and an optional Product.addin. These create the menu items in the help menu to your documentation, website and any other links that you require inside the IDE. Sample AddIn files are available for download here.

    These files must be placed in the %ROOT%\Accessory\AddIns folder.

    Very Important: Do not alter the AccessoryMenu.AddIn file in any way.

    Instructions for altering the AddIn files:
    - Save the Supplier.AddIn to Supplier.AddIn
    - Edit the Supplier.AddIn and replace Supplier with Supplier.
    - Save the Product.AddIn to Product.Addin
    - Edit the Product.AddIn and replace Supplier with Supplier and Product with Product.

    Note: You can place everything inside the Supplier.AddIn file if you prefer (and not use the Product.AddIn)

  5. 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. The uninstall exe (together with the log) should be placed in the %ROOT%\Accessory\Uninstall directory.

  6. Create a shortcut menu in the Start | Programs | Clarion 7 Accessories | Supplier | Product menu on the Windows Start bar to contain shortcuts to the examples, documentation, the uninstall and additional utilities.

  7. Your installer should create a Supplier.ini file in the %ROOT%\Accessory folder that contains details of the current version of the product in the following format:

    [Supplier Accessories]
    ProductInstallLast=1.00      !Optional
    ProductInstall=1.01
    ProductInstalledDate=20090529

    ProductInstallLast is optional but is useful for identifying what version the user upgraded from.

  8. 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.

  9. The install should display (or offer to display) the documentation and the examples folder at the end of the install.

Install Standards (for versions prior to clarion 7)

The following standards apply to the Install of the product (for installs into clarion 7 see above).

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.