How do I develop Delphi applications that manage markup?
Last reviewed: 12/15/2011
HOW Article ID: H071139
The information in this article applies to:
- VoiceMarkupKit 4
Summary
You can develop Delphi applications that manage markup using your favorite version of Delphi.
More Information
VoiceMarkupKit includes a Delphi Pascal source file (.pas) comprised of the Delphi classes that manage markup.
To access the VoiceMarkupKit Delphi classes within your application, first add a project reference to the VoiceMarkupKit Delphi source files:
- Within your Delphi project, select Project Options.
- Select the Delphi compiler options.
- Add Search path reference to the VoiceMarkupKit unit source file directory: C:\Program Files\Chant\VoiceMarkupKit 4\Win32\Delphi\source.
- Add unit output path reference to the local directory with a period '.' character.
- Within your Delphi project, select Project Options.
- Select the Delphi compiler options.
- Add Search path reference to the VoiceMarkupKit unit source file directory: C:\Program Files\Chant\VoiceMarkupKit 4\Win64\Delphi\source.
- Add unit output path reference to the local directory with a period '.' character.
To access the VoiceMarkupKit Delphi classes within your application, add a reference to the ChantShared and VoiceMarkupKit units in your uses clause:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ChantShared, VoiceMarkupKit;
Add an event handler declaration and Object instance variable to the application declarations:
type
TForm1 = class(TForm)
...
private
{ Private declarations }
public
{ Public declarations }
procedure OnHasEvent(var msg: TMessage);
message WM_APP+7;
end;
var
Form1: TForm1;
ChantVM1: TChantVM;
Object Instantiation
Instantiate an instance, set the license and serial properties, and set the event handler message.
procedure TForm1.FormCreate(Sender: TObject);
begin
ChantVM1 := TChantVM.Create();
// Set license properties
ChantVM1.SetStringProperty(CSPLicense,'LicenseRegistrationNumber');
ChantVM1.SetStringProperty(CSPSerials,'LicenseSerialNumber');
// Define the HasEvent callback message
ChantVM1.SetWindowMessage(Handle, WM_APP+7, 0, 0);
end;
Event Callbacks
Event callbacks are the mechanism in which the component library sends information back to the application such as there was an error.
procedure TForm1.OnHasEvent(var msg: TMessage);
var
aTChantVMEvent: TChantVMEvent;
i: Integer;
begin
numberOfEvents := ChantVM1.GetResourceCount(CSREvent,0,0);
for i := 0 to numberOfEvents - 1 do
begin
// Get the event from the event queue
aTChantVMEvent := ChantVM1.GetChantVMEvent(0);
case tEvent.ChantCallback of
CCAPIError:
...
end;
...
// Remove the event from the event queue
ChantVM1.RemoveResource(CSREvent);
aTChantVMEvent.Destroy();
end;
end;
Deployment Checklist
When you are ready to deploy your Delphi application, you need to ensure you have a valid license, bundle the correct Chant component library, and configure your installation properly on the target system. Review the following checklist before deploying your applications:
- You may deploy your Delphi application to any system with a valid license from the Chant.
- Copy CVoiceMarkupKit.dll to the target system and place in the same directory with your application.
- You may deploy your Delphi application to any system with a valid license from the Chant.
- Copy CVoiceMarkupKitX64.dll to the target system and place in the same directory with your application.
Sample Projects
Delphi sample projects are installed at the following location:
- My Documents\Chant VoiceMarkupKit 4\Win32\Delphi\RS 2007,
- My Documents\Chant VoiceMarkupKit 4\Win32\Delphi\RS 2009,
- My Documents\Chant VoiceMarkupKit 4\Win32\Delphi\RS 2010,
- My Documents\Chant VoiceMarkupKit 4\Win32\Delphi\RS XE,
- My Documents\Chant VoiceMarkupKit 4\Win32\Delphi\RS XE2, and
- My Documents\Chant VoiceMarkupKit 4\Win32\Delphi\RS XE3.
- My Documents\Chant VoiceMarkupKit 4\Win64\Delphi\RS XE2 and
- My Documents\Chant VoiceMarkupKit 4\Win64\Delphi\RS XE3.