Author Archive

I was playing with this technique a lot over the past few weeks. There is a lot of work coming up to integrate clarion with .Net components and if there was a way to do so without having to register them using regasm before they could be used that would be really, really awesome.

See the thread “COM Gurus – Need some help & advice” on comp.lang.clarion newsgroup for some further discussion.

Long story short, I was able to get it partly working. With the right manifest you can use a COM object from clarion just fine without registration. Unfortunately this does not extend to placing user controls in a Clarion OLE control which is pretty much all I was after.

Clarion calling .Net COM reg-free!


All is not lost, I think there are still a few ways this could be achieved but for now I have had to shelve the project in deference to more financially immediate concerns… such as you know, paid work Smile

See the repo I created on GitHub for an example project, more information and some links to where I think it could go next –


This post is a heads up to let you know that the syntax highlighting package for Clarion, SublimeClarion, is now available from Sublime Package Control!

If you have not done so already, first install Sublime Package Control as described here then install the SublimeClarion package via the command palette. .. couldn’t be easier! More details on command palette usage here.





Ok, so before you ask why on earth would you bother let me explain 🙂

As part of my work over at ClarionAddins I am always looking for way to improve the user experience as well as stretching my knowledge of .Net programming. I thought it might be nice to use WPF but since the Clarion IDE is targeting v2.0 of the .Net framework this is not so easy. Hence this example!

Of course there are many resources out there related to this topic, see below, but nothing I could discover specific to v2.0 so for me it took a little work to get there. I learnt a lot about reflection along the way!

This code assumes that the v3.5 Framework is installed on the target machine. For production it would of course be necessary to test for this and react accordingly.

Here is a screenshot of this technique being used in an addin I am working on:

WPF UserControl in an Addin Pad!



The following is a simple example of running a native clarion win32 application as a cloud service.

Technologies used:

For the Impatient

See it running – WazClarion (Waz – Windows Azure!)

Say what?!

Using the PackAndDeploy example from the Smarx Running the Mongoose Web Server in Windows Azure tutorial I have managed to successfully test and deploy a clarion application to the Windows Azure cloud service! Read on for some more info on the steps involved. Leave a comment or send me an email if you have any questions.


Install the Windows Azure SDK to your dev machine.

Step 1 –  Git clone the PackAndDeploy to a dev folder.

See Step 1 in the Quick Walkthrough from Smarx.

Additionally I highly recommend following that example and making sure that your Azure SDK and emulator are setup and running correctly and get a little familiar with Azure before you start adding clarion to the mix.

Step 2 – Prepare your clarion APP

I used the “BasicBrowseAndForm” example that comes with NetTalk. Anything that can reply to HTTP requests should work fine.

There were a couple of changes to get the example working

  • WebServer procedure, in ThisWebServer.Open, before parent

  • WebServer procedure, in ThisWindow.Init

  • In application global properties, file control tab set the access mode to ReadOnly.

Step 3 – Adjust the PackAndDeploy example to work with the clarion app

Delete all the files in the WorkerRole sub directory except for the Run.cmd

Edit the WorkerRole\Run.cmd file to look like this:

Copy your clarion EXE and support directories into the WorkerRole folder. Anything in this folder gets included in the deployment package.

Step 4 – Deploy to the cloud

Use the “pack.cmd” from the PackAndDeploy example to create a package for upload and use the Windows Azure portal to deploy your application!

Step 5 – See it in Action!

Ok so it is not perfect yet, I had to tell clarion to only access the files in ReadOnly mode. You would need to look into the various storage options to fix that if you really want to use TPS, a better alternative will most likely be to use SQL server for your data needs. Error handling and diagnostics would need some forethought. There is a way to access a remote desktop session for debugging via a GUI if you want though. The pack and deploy process can probably do with some further automation too Smile.