PROPERTIES Object +
Updated: Mar 26, 2005

The Properties Object (alias Prop) creates a "properties" resource in your
executable.  When your .exe file is right-clicked and "Properties" is selected,
your application information is displayed.

Each method adds a single line to the properties resource.  A source code line
should contain only one properties method statement.

hotprop.bas below shows a working example.  A web search for "versioninfo
resource" may list sources with detailed technical information of the resource
format and examples.


METHODS    Arguments & Comments
~~~~~~~    ~~~~~~~~~~~~~~~~~~~~
Begin	   Write BEGIN statement to resource; Prop.Begin

Block      Used after .Begin to identify .Value data type

           Prop.Block quoted_string  'quoted_string = "text"

           Prop.Block "StringFileInfo"  'same as .StringFileInfo

End        Write END statement to resource; Prop.End

FileFlags  Write FILEFLAGS statement; Prop.FileFlags value

FileFlagsMask
           Write FILEFLAGSMASK statement; Prop.FileFlagsMask value

FileOS     Write FILEOS statement; Prop.FileOS value

FileSubType
           Write FILESUBTYPE statement; Prop.FileSubType value

FileType   Write FILETYPE statement; Prop.FileType value

FileVersion
           Write FILEVERSION statement; Prop.FileVersion value

ProductVersion
           Write PRODUCTVERSION statement; Prop.ProductVersion value

StringFileInfo
           Write BLOCK "StringFileInfo" statement

Value      Write VALUE value1, value2 statement; where value1 and
           value2 are quoted_string items

           Prop.Value "Author", "Maj. Hog"

VarFileInfo
           Write BLOCK "VarFileInfo" statement


###########
hotprop.bas in HotThing shows a working coding example.

PROPERTY object code generates a resource for the exectuable accessed by the
OS in the "Properties" tab for the .exe file properties.
As such, only quoted strings or $DEFINE values may be used.  E.g.,

  $DEFINE PROP_prog "HotIDE"
  $DEFINE PROP_version "2.5a"
  $INCLUDE "MyPROPTemplate.bas"

  Lines in $INCLUDE file:

  .VALUE "FileDescription", PROP_prog
  .VALUE "FileVersion", PROP_version
  'etc

  $UNDEF PROP_prog, PROP_version


+ Penthouse (registered) version

Copyright 2004-2005 James J Keene PhD
Original Publication: July 20, 2004
